Many technical reference guides are so densely packed that finding the information you need is like hunting for the proverbial sewing implement among a stack of livestock feed. So I was happy to come across XML for the World Wide Web. Its refreshing approach and reader-friendly design make it easy to concentrate on the concepts being presented. If you have a free weekend and need to get a basic handle on XML, this is a good book to peruse.
One of several Visual QuickStart Guides published by Peachpit Press, XML for the World Wide Web makes excellent use of page layout to make it easier to absorb the details.
Each page is laid out into two columns. The outside column contains detailed explanations of the concepts. The inside column includes sample code to demonstrate the explanations. The demonstration code is highlighted in red, which makes it easier to grasp the related concept. A companion Web site offers extra tips and source code examples.
XML for the World Wide Web: Visual QuickStart Guide
What this book covers
The book is divided into seven parts:
- Part 1: XML
- Part 2: DTDs
- Part 3: XML Schema and Namespaces
- Part 4: XSLT and XPath
- Part 5: Cascading Style Sheets
- Part 6: XLink and Xpointer
In Part 1: XML, Castro introduces the basics, including elements, attributes, and values. In each section, she describes how to create the tags and offers some tips. For example, in a section on adding attributes, you learn how to add the values "English" and "Latin" to the attribute "Language." Among the tips for that topic: Attribute values must be in quotes, and no two attributes may have the same name.
In Part 2: DTDs, you learn how to declare internal and external Document Type Definitions (DTDs), how to define elements and attributes, and how to create shortcuts for text and DTDs.
The 65-page Part 3: XML Schema and Namespaces includes an overview of schemas written using the XML Schema language, which, according to Castro, "lets you define both global elements (that must be used in the same way throughout the XML document) and local elements (that can have a particular meaning in a particular context)." This section was particularly helpful to me in gaining an overall understanding of how to actually use XML.
In Part 4: XSLT and XPath, you learn how to transform and format XML documents by creating templates using Extensible Stylesheet Language Transformations (XSLT) and gain an understanding of how to use XML's Path Language (XPath) to reduce the amount of code required.
Part 5: Cascading Style Sheets is as good an overview on CSS as I've seen, whether you'll be using CSS with XML or HTML.
Part 6: XLink and XPointer discusses links and images and identifies which are not supported on any major browsers as of the printing date of the book. Finally, the book includes appendices on XHTML, XML tools, special symbols, and colors in hex, all of which serve as nice references.
Data throughout the book describes the subspecies of tigers, their native habitats, collective numbers, and threats. Author Elizabeth Castro bases all her examples on real facts, most of which come from the World Wildlife Fund Web site. "There are only 5,000 tigers left!" she mentions in the Colophon at the end of the book, urging readers, "conservationists or not," to help protect the planet.
What this book doesn't cover
XML for The World Wide Web is best suited for a beginner with basic knowledge of HTML or for a developer who needs to cut to the chase and understand XML quickly. It doesn't cover more advanced XML concepts, such as SOAP, Simple API for XML (SAX), or Document Object Model (DOM). It also doesn't show you how to integrate XML with other languages, such as Java. For that, I'd reach for Java and XML, Second Edition by Brett McLaughlin, published by O'Reilly. (But then, as you might know from a previous review, I often reach for O'Reilly books, especially the In a Nutshell series.)
A great start
The friendly design of this book, combined with its competent beginner's overview, makes it worth the purchase. Keep in mind, though, that to advance your knowledge into a real-world application, you'll likely need additional resources and learning time beyond what this book provides.