« Loading resources from the classpath | Main | Does anyone really think RSS-Data is a good idea? »

RELAX NG book in pre-publication

RELAX NG

Eric van der Vlist:

Although the book shouldn't be drastically updated at this point, you
are still welcome to submit your feedback using our annotation system.

John Cowan picked up on James Clark's forword on xml-dev, and it's worth repeating:

XML standardizes only a syntax, but if you constrain XML documents directly in terms of the sequences of characters that represent them, the syntactic noise is deafening. On the other hand, if you use an abstraction that incorporates concepts such as object-orientation that have no basis in the syntax, then you are coupling your XML processing components more tightly than necessary. What then is the right abstraction? The W3C XML Infoset Recommendation provides a menu of abstractions, but the items on the menu are of wildly differing importance.

I would argue that the right abstraction is a very simple one. The abstraction is a labelled tree of elements. Each element has an ordered list of children where each child is a Unicode string or an element. An element is labelled with a two-part name consisting of a URI and local part. Each element also has an unordered collection of attributes where each attribute has a two-part name, distinct from the name of the other attributes in the collection, and a value, which is a Unicode string. That is the complete abstraction. The core ideas of XML are this abstraction, the syntax of XML and how the syntax and abstraction correspond. If you understand this, then you understand XML.


October 7, 2003 10:28 AM

Comments

Trackback Pings

TrackBack URL for this entry:
http://www.dehora.net/mt/mt-tb.cgi/1098

Listed below are links to weblogs that reference RELAX NG book in pre-publication:

» Principals of Loose Coupling from Windley's Enterprise Computing Weblog
bLOGical has posted some Principals of Loosely Coupled APIs which provides a table of distinctions for tightly coupled and loosely coupled architectures as well as referencing an excellent article by Bill de Hora on Foundations for Component and Service M [Read More]

Tracked on July 28, 2004 08:24 AM