books
Essential XML; Beyond Markup

ISBN: 0-201-70914-7

Pages: 352

Publisher: Addison Wesley

Authors: Don Box, AAron Sonnard, and John Lam

Intended Audience:

Essential XML  is intended for the software practitioner.  The book is designed to reveal the "truth" about XML.  That is, the book was written to help developers sort out when XML makes sense, and likewise when it doesn't.  To quote the authors in the preface, "The trade press has anointed XML as the universal duct tape for all software integration problems...whether it makes sense or not."

Summary:

Essential XML is written from the prospective of what the authors consider to be the most pivotal specification, the XML Information Set (Infoset).  They believe the Infoset to be the most important because it describes exactly what an XML document is in syntax-free terms.  According to the authors, the most interesting XML technologies are written in terms of the Infoset.  The authors therefore begin this book with a look at XML beyond the syntax of the markup, from the Infoset point of view.

The second chapter of Essential XML focuses on the programming interfaces to XML.  Here the authors provide an overview to SAX2 (Simple API for XML) and DOM2 ( Document Object Model Level 2).  The authors describe the similarities and differences and provide concrete examples of the use of SAX2 and DOM2.

The third chapter focuses on the suite of XML specifications that enable navigating XML structures and enable addressing.  Here authors focus on XPath, XPointer, XInclude, and XBase.  This chapter is filled with diagrams illustrating the navigation models and a host of examples.  A great deal of time is spent on XPath expressions and functions.

Chapter 4 focuses on XML Schemas.  According to the authors, "XML documents exchanged between software agents rarely consist of arbitrary, unconstrained markup."  Schemas enable both software and humans to know what content to expect in XML documents that are exchanged.  These authors do not consider DTDs at all, stating that "XML Schema subsumes the functionality of ... DTDs."    Again the chapter is filled with examples.  Most useful is the table of simple type facets that helps programmers understand how the data types may be constrained.

Chapter 5 focuses on one of the most useful of the XML core family of standards, XSLT for performing transformations.  These authors consider XSLT to be a "programming language" and compare it to other programming languages such as Perl, Active Server Pages, and Java Server Pages.  In addition to providing examples where XSLT uses literal result elements as the stylesheet, this chapter provides the technique for developing stylesheets that are a series of one or more template rules that can be invoked with either symbolic names or template rules based on pattern matching.

The final chapter of Essential XML is most interesting.  It provides a look at the state of component software today (without XML) and then examines how XML may (or may not) change the way component software is written in the future.  According to the authors, "despite the hype surrounding XML... simply adopting XML ans an integration technology is fairly meaningless."  The emerging SOAP specification (also authored by Don Box) is highlighted in this chapter to show how XML can be useful to develop a framework for layering extensions into a message format.  The authors conclude that the nature of XML schemas "force one to reevaluate exactly what an object is and whether this term is even meaningful..."

This book is a departure from other developer texts that compartmentalize XML and its family of specifications.  It is written from the prospective of the InfoSet.  It relates other specifications and technologies to XML in a seamless fashion and will prove truly useful not only to experienced developers, but to those developing new Web specifications as well.

Return to Book Reviews
Return to Home Page
line