On Sun, Dec 7, 2008 at 11:53 AM, Vincent Danjean <vdanjean.ml@free.fr> wrote:
Joshua Ferraro wrote:
I can say with certainty that Expact is not UNICODE safe, neither is PurlPerl ... only LibXML is safe.
In this case, do you know which part of Koha really call the XML parser ? As said before:
I failed to see where koha really instantiate a sax parser. 'rgrep "use XML::SAX" koha/' does not return anything (but sax_parser_print.pl and sax_parser_test.pl).
And if we know where the XML parser is called (directly or indirectly), we can set in the koha file(s) the global variable
$XML::SAX::ParserPackage = "XML::LibXML::SAX"; in order to force the good XML parser without requiring to modify a global configuration file Primarily, Koha uses a SAX parser in MARC::File::XML, but also XML::Simple.
Cheers, Josh
Best regards, Vincent
On Sat, Nov 15, 2008 at 9:13 AM, Vincent Danjean <vdanjean.ml@free.fr> wrote:
[moving from koha to koha-devel due to my questions]
Mason James wrote:
On 2008/11/12, at 11:56 AM, Brendan Gallagher wrote: > Did you try editing ParserDetails.ini What I do not understand is why koha is requiring to modify such a global configuration file.
Is this setup really still required ? Were not the bugs from the expat filter fixed ? I do not know at all why this parser is/was needed, but Expact seems to work for the test case in koha scripts : vdanjean koha/misc$ ./sax_parser_print.pl XML::SAX::Expat=HASH(0x115c4f0) vdanjean koha/misc$ ./sax_parser_test.pl é vdanjean koha/misc )
By the way, this kind of requirement is really a bad thing (with my hat of trying to make a official Debian package) => it will be NOT possible at all that the koha package modifies the global configuration file. However, I really do not understand why, if the SAX parser is really needed, it is not required in the koha code itself.
For example, I tried to add as the first line in sax_parser_print.pl and sax_parser_test.pl the line: $XML::SAX::ParserPackage = "XML::LibXML::SAX"; (tip found in the doc of XML::SAX::ParserFactory) Without changing my global configuration file, sax_parser_print.pl now report XML::LibXML::SAX.
I failed to see where koha really instantiate a sax parser. 'rgrep "use XML::SAX" koha/' does not return anything (but sax_parser_print.pl and sax_parser_test.pl).
Perhaps, koha gurus can know where SAX parser are used and add the line requesting the particular parser if it is still needed ?
Regards, Vincent
-- Vincent Danjean Adresse: Laboratoire d'Informatique de Grenoble Téléphone: +33 4 76 61 20 11 ENSIMAG - antenne de Montbonnot Fax: +33 4 76 61 20 99 ZIRST 51, avenue Jean Kuntzmann Email: Vincent.Danjean@imag.fr 38330 Montbonnot Saint Martin
-- Joshua Ferraro SUPPORT FOR OPEN-SOURCE SOFTWARE CEO migration, training, maintenance, support LibLime Featuring Koha Open-Source ILS jmf@liblime.com |Full Demos at http://liblime.com/koha |1(888)KohaILS