|
[Current WSSG Projects][XML project home]
The following table lists some selected XML parsers and XSLT processors written in Java or C++. These are core software products for working with XML.
| Vendor or Author | XML Parser | XSLT Processor* |
|---|---|---|
| *Some of these XSLT processors can also be configured to work with a number of different XML parsers, as well as with the XML parsers listed here from their own vendors or authors. | ||
| Apache XML Project |
Xerces (Java) Xerces (C++ for Solaris, Win32, Linux, et al.) |
Xalan (Java) Xalan (C++ for Win32, Linux) |
| James Clark | XP (Java) |
XT (Java) No longer under active development by its author. Now supported by a community of developers, 4xt.org. |
| Graham Glass | Electric XML (Java) A small, fast, intuitive XML toolkit for parsing and manipulating XML documents that ships as a small, self-contained JAR file. It includes an integral XML parser, full support for namespaces, and a useful subset of XPATH, and benchmarks significantly faster than common DOM implementations. Electric XML is free for most uses and includes source code. |
|
| IBM / Lotus AlphaWorks | XML Parser for Java (XML4J) (Based on Apache's Xerces code base, to which IBM is a major contributor.) IBM claims that "XML Parser for Java is believed to be the most robust XML processor currently available and conforms most closely to the XML 1.0 Recommendation." Michael Floyd, in Chapter 10 of his book, Building Web Sites with XML, lauds XML4J for its: "thorough and continuing support of emerging XML ... standards. I have found that within a few days of a standards release, the IBM team usually makes an xml4j update available." And Tom Patterson wrote in his comparison of five Java-based parsers, XML Parser Shoot-out in the October 1999 issue of the Microsoft Visual J++ Informant that, while duly noting some issues with this parser: "IBM's XML4J parser is a top-notch all-around performer. It easily out-performed the other production-level (non-beta) parsers. ... This parser comes with excellent documentation and samples to help get you started. ... Of all the parsers, I felt this one had the best documentation. " |
Lotus XSL Processor (Java) |
| Michael Kay | (Open Text's Ælfred XML parser is built into SAXON, although SAXON can also be configured to use other XML parsers.) |
SAXON (Java) Instant SAXON (Java, packaged for easy Win32 installation) Elliotte Rusty Harold noted on his Cafe con Leche XML News and Resources Web site on 2000-09-14 that: "Overall SAXON is now far and away my XSLT processor of choice. It's more conformant to the XSLT 1.0 spec than xt and a lot faster and easier to use than Xalan." |
| Microsoft MSDN Online: XML Developer Center |
Microsoft XML Parser (MSXML) (C++ for Win32) | The Microsoft XML Parser has an integral XSLT processor. |
| Open Text Corporation |
Ælfred (Java)
Uche Ogbuji's August 2000 LinuxWorld article, Practical XML with Linux, Part 2: A survey of tools, terms Ælfred "pioneering but now moribund." |
(Ælfred is also distributed in a bundle with Michael Kay's SAXON XSLT processor.) |
| Oracle XML Developer's Kit |
XML Parser for Java XML Parser for C (Solaris, Win32, Linux) XML Parser for C++ (Solaris, Win32, Linux) XML Parser for PL/SQL |
Some versions of Oracle's XML Parsers for Java, C, and C++ have integral XSLT processors. |
| Sun Microsystems XML Developer Connection |
Xerces (C++ for Solaris) (A port of Apache's Xerces to Solaris 8.) |
Xalan (C++ for Solaris) (A port of Apache's Xalan to Solaris 8.) |
| Unicorn Enterprises SA (Switzerland) |
Unicorn XML Processor (C++ for Win32, written as an ECMAScript interpreter to facilitate extensions) |
Unicorn XSLT Processor:
Standard Edition (C++ for Win32) Database Edition (C++ for Win32, database extensions not tested under Windows 95) Professional Edition (C++ for Win 32, database extensions not tested under Windows 95) The Database and Professional Editions include a set of XSLT SQL extensions for directly accessing relational databases. The executable file incorporates a subset of the Unicorn XML Processor. |
Unless otherwise stated, all of the listed products may be used at no cost, subject to the specific licensing terms for each product.
In most cases, you'll need to manually install both an XML parser and an XSLT processor on your computer. However, these tools are also beginning to be bundled with some operating systems and application programs, most notably with Microsoft Windows 2000 and recent versions of the Microsoft Internet Explorer Web browser. Certain application programs may also incorporate a built-in XML parser, typically built using James Clark's Expat library in C.
Some of these XML parsers and XSLT processors are written in the Java programming language and will work under the Java Runtime Environments (JREs) provided with many different operating systems. Certain of these tools may require a very recent version of Java, so be sure to check their listed requirements. Some other products are written in languages such as C++ or C and are designed to work only with particular operating systems.
Products were included in this table because they were believed to be widely used, well regarded, have especially useful features, or come from vendors whose other products are used for other University of California, Berkeley business. This list is not exhaustive, and does not represent recommendations or endorsements by UC Berkeley. Other products may be added to this list in the future.
URL:http://seaotter.berkeley.edu/xml/parsers.html
Last modified on Wednesday, 09-May-2001 16:10:13 PDT