OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Early review of XOM, the XML Object Model

[ Lists Home | Date Index | Thread Index ]

So that Elliotte Rusty Harold won't have to toot his own horn, I am writing
this brief review of his newly announced XOM, the XML Object Model
(http://www.cafeconleche.org/XOM).  As he says, it is "new XML object
model [that] is an open source (LGPL), tree-based API for processing
XML with Java that strives for correctness and simplicity."
It is in the same part of the design space as W3C DOM, JDOM, dom4j, etc. etc.
but with many improvements for ease of use.

What it really has, however, is the most important thing a software
architecture can have: conceptual integrity.  As Fred Brooks said back
in 1975 in _The Mythical Man-Month_:

	[C]onceptual integrity is *the* most important consideration
	in system design.  It is better to have a system omit certain
	anomalous features and improvements, but to reflect one set of
	design ideas, than to have one that contains many good but
	independent and uncoordinated ideas.  (ch. 4)

XOM satisfies this criterion eminently: it is the product of a single mind.
The result is that the architecture is systematic and unsurprising: the
features available are what one would expect (with a few delightful
innovations thrown in) and, more importantly, once the fundamental concepts
are grasped, everything behaves as it should.

(Disclaimer: I have not exercised the implementation yet, so I don't know about
implementation-level bugs.)

Combined with the conceptual integrity of the architecture is a concern
for consistency in "Minute Particulars" (Wm. Blake) that makes this
particular API hit the sweet spot in Java-based tree XML APIs.

Naturally, something first released two days ago is not and cannot be
perfect.  However, the Man With Three First Names is continuing to refine
the API (and the implementation) based on input from the xom-interest
mailing list (sign up at the site).  He has said that XOM is a cathedral,
not a bazaar, but although he is the benevolent dictator, we are seeing
considerable concern for the needs and viewpoints of the list members,
always subject to his own vision.

I urge the xml-dev community to get involved.  Java users should try XOM
for themselves; non-Java types may wish to recycle the architecture for
new environments.

John Cowan  jcowan@reutershealth.com  www.ccil.org/~cowan  www.reutershealth.com
"If I have seen farther than others, it is because I am surrounded by dwarves."
        --Murray Gell-Mann


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS