Re: [PHP-XML-DEV] Replacing expat with libxml
[email protected] (Christian Stocker)
| Newsgroups | php.internals,php.xml.dev |
|---|---|
| Organization | Bitflux GmbH |
| Message-ID | <[email protected]> |
On Mon, 2003-04-28 at 00:32, Sterling Hughes wrote: > Hi, > > After some discussions with various people at the PHP-Con, I decided it > was important that we (at least) have libxml integrated with PHP by > PHP5. When it comes to XML processing, expat is a legacy library and it > doesn't support nearly what is required for processing XML by todays > standards. I'm still no big fan of bundling libxml2 with php, but if there's a consensus that it should be bundled, so be it, _if_ anyone takes the job of merging the constantly updated libxml2 sources into the php-tree. On the other hand, wouldn't it be enough, if it's bundled in the downloadable sources and not put into CVS? > On the other hand libxml is a very robust xml processor, providing > support for: Just for your information: Rob Richards is currently working hard on the new domxml extension, which follows the DOM Standard much better than todadys domxml. Furthermore it will also have better memory management. I think, it's soon in a state where we can put it into CVS. We were also talking about a new name for this new extension as domxml is quite missleading (as Sterling said, libxml2 can do a lot more than just DOM processing). Any thoughts about that? chregu > > - XML Schema > - DOM > - Validation (against a DTD or Schema) > - SAX > - XML Catalog > - Docbook and HTML Parsers > - XPath, XPointer, XInclude > - Base XML datatypes (XML Schema Part 2) > - FTP and HTTP transports (as well as an IO wrapper library like > Streams) > > I've currently completed the first two steps of the integration. I've > removed the expat library from ext/xml and replaced it with libxml. > I've also ported the XML extension to use libxml as the underlying > processing engine. > > The following incompatibilities exist: > > 1) some XML_ERROR_ * constants are irrelevant (they are stilled defined, > but they have no meaning for libxml). > 2) xml_error_get_string() just returns a blank string. This can be > changed in the next couple of days, i just need to implement error > strings ontop of libxml error codes. > > Having this library bundled internally will allow people to develop > other extensions which use libxml features, and will allow for future > extensions (for example, a fully compliant DOM extension) to easily be > added, without requiring extra bundling. > > Thoughts? > > -Sterling > > -- > "The computer programmer is a creator of universes for which he > alone is responsible. Universes of virtually unlimited complexity > can be created in the form of computer programs." > - Joseph Weizenbaum -- christian stocker | bitflux GmbH | schoeneggstrasse 5 | ch-8004 zurich phone +41 1 240 56 70 | mobile +41 76 561 88 60 | fax +41 1 240 56 71 http://www.bitflux.ch | [email protected] | gnupg-keyid 0x5CE1DECB