XML and Java: Other APIs
December 9, 1998
We conclude Part 2 of our "XML and Java" article with several
other toolkits which are basically unrelated, even though they can be used
together.
Docuverse DOM SDK
Docuverse DOM SDK (previously called SAXDOM and then FreeDOM) is a
free implementation of the W3C DOM, much as is Sun's XML Library and
IBM's XPK4J, discussed elsewhere in this article. Don Park's DOM SDK
is layered on top of SAX; it provides a
DOM (Document Object Model)
interface in Java. DOM SDK can be used with
Swing
to support custom node implementations. The toolkit supports both XML
and HTML DOMs. Third party software with which DOM SDK is compatible
includes: Coins,
DOM Parser,
Koala
XSL Engine, and
SAXON.
It is compatible with JDK 1.2 (and 1.1).
SAXON
URL:
http://home.iclweb.com/icl2/mhkay/saxon.html
API User's Guide:
http://home.iclweb.com/icl2/mhkay/saxon-guide.html
SAXON facilitates processing XML documents by performing XML to XML or XML
to HTML transformations (a la XSL). It is particularly suited for
applications that need to process a very specific document type,
such as those that conform to a DTD written specifically for the application.
Like most other APIs in this article, SAXON is layered on top of SAX (and
hence the name).
"
SAXON
[download]
is a java class library that sits on top of a SAX Parser or DOM
implementation, providing a variety of facilities that help the
application to process an XML document. It is designed primarily to
support applications handling specific document types (as
opposed to general-purpose tools), especially applications doing
XML-to-HTML or XML-to-XML transformations. SAXON works in principle
with any
SAX 1.0 conformant parser
(the latest version is tested with xp, xml4j, SUN XML Library,
AElfred) or with any implementation of the latest DOM specification
(tested with docuverse and xml4j; should work with SUN again when
they upgrade to the latest spec). The download includes source and
object code, documentation, and sample applications. One of the
sample applications is a DTD Generator which has proved popular in
its own right."
"...SAXON works by performing a serial scan of the document, calling
user-defined element handlers to process each element as it is encountered.
The actual parsing is done by a SAX-compliant parser, which you must install
separately. SAXON allows you to write your own element handlers or to use
standard element handlers supplied with the package. Each type of element
can have its own element handler, enabling you to keep your application
modular....There is an option in SAXON to build the document tree (the DOM)
in memory. If you do this, the application can process the data in exactly
the same way as during a direct serial parse, but there is additional
flexibility...."
"DTDGen
[download]
is a program that takes an XML document as input and produces a Document
Type Definition (DTD) as output. The aim of the program is to give you
a quick start in writing a DTD. The DTD is one of the many possible
DTDs to which the input document conforms. Typically you will want
to examine the DTD and edit it to describe your intended documents
more precisely. In a few cases you will have to edit the DTD before
you can use it."
XML Testbed
URL:
http://xml.com/xml/pub/tools/xmlt/index.html
Steve Withall's XML Testbed provides "its own supporting XML infrastructure,
including an XML parser and grove. A key feature of the infrastructure is a
'node type registry', which allows dynamic control over which classes are used
for particular types of elements - the element class to represent them, the
parser class to parse them, the customizer class to edit them and the view
class to display them (using a Swing text editor kit). The XML Testbed
provides means to edit and then parse an XML source.... The software has
been designed to be as modular as possible, to be divided into a suite of
relatively small packages, each with a clear role.... [XML testbed includes
a] nascent XSL engine, XML-based user interface configuration, and a database
analyser for generating an XML file of the schema of a database." The
overall structure
includes a diagram that shows the relationship among the many
packages. This software does not presently support
DOM
compliance.
Coming Next Month
Visit WDVL in mid January for Part 3: "XML and Java:
A Perfect Pair: Tools"
in which we will discuss a number of Java-based parsers, editors,
and specialized software for XML.
XML and Java: Serialization APIs
XML and Java: The Perfect Pair: Part 2: Java APIs for XML
|