
XML Applications
ISBN 1-861001-52-5 Price £45.99UK
Frank Boumphrey, Olivia Direnzo, Jon Duckett, Joe Graf,
Paul Houle, Dave Hollander, Trevor Jenkins, Peter Jones, Adrian Kingsley-Hughes,
Kathy Kingsley-Hughes, Craig McQueen and Stephen Mohr
14 Chapters, 7 Appendicies and Index in 649 pages
Chapter List
1
XML DTDs, XML Namespaces, CDFs, CML, OFX, Schemas and Stylesheets
2 Wellformed
and Valid XML, DTDs in-depth
3 XML
Schema, XML as a Database, Document Content Description Proposal
4 Namespaces,
Namespace Applications
5 XML
Links and Pointers, XLink, XPointers
6 XML
Document Object Model, W3C DOM, XML and IE5, Data Engines
7 Displaying
XML, Cascading Style Sheets, Spice
8 Extensible
Stylesheet Language (XSL), XSL Templates, CSS Namespaces
9 XML
and the Data Tier
10 Server-side
XML, Clients/Agents, Active Server Pages
11 Case Study:
The Travel Broker
12 "The Weeds of
El Limon": Customized XML Web Publishing
13 Channel Definition
Format
A thoroughly in-depth book which will tell you everything you could possibly need to know about XML, and then some. The pace of the book is frighteningly quick in places, and can be quite heavy going. The only knowledge a reader is presumed to have is HTML, but it's certainly an advantage to be fluent in any of ECMAScript, Java, CSS and particularly SGML. This book will tell you how XML is used in practice, whether that be on the world-wide web, or in a data-base system, or anywhere else for that matter. It covers XML, CSS, eXtensible StyLe sheets, and all latest technologies related. If you're serious about web-design or database work, are conversant with HTML 4.0 (and preferably style sheets), and want to learn about XML, there's no better place to start.
Review
It's hard to write a short review of a book like this. Right from the start the book covers an amazing amount of ground in a very short space of time, with enough information in the first three chapters to enable you to go out and use XML in anger. This book is completely cross-platform; so although Microsoft technologies abound, Netscape is also present and one of the authors even professes to be an avid Linux user!
If you want something to tell you what XML is all about; how to create XML documents, and how to use XML generally in a web-based environment, you won't go far wrong with this book. This book covers all the 'official' W3C recommended technologies, such as CSS, but also covers other areas which are currently just being thought about, such as Spice. However, be aware that while this covers all the stuff you're likely to be interested in, it goes a lot further in many areas. In a somewhat un-Wrox-like fashion, this is quite a theoretical book in places; much more like an offering from O'Reilly than Wrox. As a regular Wrox-book reader, I am used to the practical 'this is how you do it' approach; rather than the more conventional 'this is how the theory says you should to it'. And while this book covers practical ground, with some well-thought out and documented case studies, at times it also veers off into territories unknown - technologies that are being discussed currently are mentioned, even though there is no hope of using them for real within the next five years.
The flow of the book is somewhat stinted in places; probably due to the immense amount of information that the authors have tried to cram into it's 600-odd pages. And the authors generally do admirally well, but occasionally things go astray: too often within the book they ask the reader to assimilate what they are reading without understanding, on the promise of an explanation further within. Also, with the pace of the book as it is, reading is often quite hard going: the number of anocryms per chapter seems to be directly proportional to the page number; the further you delve into the book the more prior knowledge is assumed. This certainly isn't a book you will just be able to 'dip into' for a quick answer without reading it once or twice beforehand.
I started having problems with this book by about page 64, when the
in-depth discussion about creating "well formed XML" really starts, under
the section marked "Document Type Declaration". To quote the book,
"... Yes, there is a document type definition and a document
type declaration. It can be confusing, especially as the declaration includes
the definition. ..."
So, this chapter starts talking about DTDs, although there two completely different document parts that share the common abbreviation "DTD". This isn't necessarily a fault of the book, since the authors were not the ones who chose the designated names for all these things, but sometimes the distinction was not clear - only by reading the previous and forthcoming sentances a few times could I ascertain what the writer was referring to; I imagine someone with absolutely no prior knowledge of XML may have problems at this point.
The large proportion of this book is dedicated to XML as an information system enabling technology, as the authors refer frequently to ideas such as 'information', 'meaning' and 'data'. Those who work and/or research within the IS or databases field will know that these are woolly and vague notions at best, and again this book is clouding the issue somewhat. However, these are minor gripes in a way, because this book is aimed at the practical aspect of XML use, and in this context it works very well - although the explanations can sometimes be a little weak, the examples are well enough thought out for it to be immediately obvious how things are done.
One area this book is particularly strong on is the integration of XML in its various forms with current technology: i.e. databases, HTML, CGI, Java, etc. In this area the book works very well, with examples of parsing technologies that allow the promise of XML to be realised within a current computer environment, and the case studies extend these ideas well. Sometimes it does rely on technologies that are not in widespread use, such as Java 1.1, or well-understood but little-used-outside-academic-work mathematical methods, such as Formal Parsing Grammars (an impure extended Backus-Naur form notation is used here), although usually these are ideas that can be grasped easily - those fluent in regular-expression (regex) matching will have used EBNF-notation, and many people will have used these without even realising it (globbing and wildcards will be familiar forms of regex matching for most people).
As a conclusion, then, I feel I can recommend this book fairly easily for those who wish to learn and use XML, particularly web/database professionals. For the casual user, especially the user who is not yet familiar with HTML at an advanced level, this book may be too much too quickly, but then, if you're interested in XML you probably aren't a casual user. The book is written in the familiar Wrox style; easily understandable, although somewhat frenetic and misshapen at times. Many examples given are Microsoft-centric, such as using COM objects and ActiveX to query an Access database, but the vast majority of the information is generic and will be easily applied in practice by the expert user. This is the only XML book I would recommend to the professional.
Review by Alex Hudson.