[
Lists Home |
Date Index |
Thread Index
]
At 4:43 PM +0100 3/17/03, Robin Berjon wrote:
>In fact, there has been some work within the Perl community to
>address the problems that programmers evidently face when using the
>dominant SAX/DOM/XPath/XSLT combo.
I strongly suspect that a large part of the problem is that exactly
none of these were designed with Perl in mind. As DOM has shown
beyond any doubt, cross-language APIs are a disaster that satisfy no
one. Interoperability needs to be achieved at the XML level, not the
API level. I don't care which API or language you use to process your
XML documents as long as I can send you XML and receive XML back.
There are a few general types of APIs (tree-based, streaming pull,
streaming push, data binding) and these types have different
strengths and weaknesses. The most generic experiences with such APIs
may cross language boundaries (e.g. use a streaming API when
documents are very big relative to memory) but anything beyond that
is misdirected effort. SAX is a good Java API. It is not a good Perl
API, and Perl should not slavishly imitate it. Instead, the Perl
community should develop their own streaming push API (If indeed
that's what they need. Perhaps they'd prefer a pull API as Bray
suggests.) that adheres to Perl's conventions and builds on Perl's
strengths. Ditto for Python, C, C++, Eiffel, and so forth.
--
+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo@metalab.unc.edu | Writer/Programmer |
+-----------------------+------------------------+-------------------+
| Processing XML with Java (Addison-Wesley, 2002) |
| http://www.cafeconleche.org/books/xmljava |
| http://www.amazon.com/exec/obidos/ISBN%3D0201771861/cafeaulaitA |
+----------------------------------+---------------------------------+
| Read Cafe au Lait for Java News: http://www.cafeaulait.org/ |
| Read Cafe con Leche for XML News: http://www.cafeconleche.org/ |
+----------------------------------+---------------------------------+
|