TechBookReport logo

Keywords: XML, XSLT, XForms, Schema, Java

Title: XML Hacks

Author: Michael Fitzgerald

Publisher: O'Reilly

ISBN: 0596007116

Media: Book

Level: All

Verdict: A useful addition to an XML bookshelf

Like the other books in this series, 'XML Hacks' provides a wide range of Tips, Tricks, Techniques and other good things (not all of them beginning with T). Featuring a veritable who's who of well-known XML authors and experts, (including Micah Dubinko, Rick Jeliffe, Jason Hunter, Michael Smith as well as editor and lead author Michael Fitzgerald), this is a book that is grounded in day to day practice.

Organised into seven chapters, the book opens with a series of introductory hacks that look at dealing with XML documents, from how to look at an XML document in a browser to how to style a document with CSS to testing documents on-line and off-line. The final hack in this chapter shows how to use Java to process XML documents. No previous Java knowledge is assumed, and the hack walks through the process of how to install and configure Java so that jar files can be used from the command-line. This is an important step because Java offers many open-source tools for processing XML, using this hack makes these available even to those who know little, if anything, about it.

The next chapter looks at XML documentation creation. This includes a round-up of editors and tools, including <oXygen/>, Emacs, Vim, MS Office and more. Other hacks in this section include converting documents from CSV or text files, converting from HTML to XHTML and so on.

Next up are a series of hacks related to the vast topic of transforming XML using XSLT. As you would expect this is an extensive set of hacks, that start with a very basic introduction to XSLT and quickly move on to more complex and useful material. Included are hacks to generate PDF files, converting from XML to CSV, generating SVG graphics and more. This is most likely going to be one of the most useful sections of the book for many readers, providing a wide-range of techniques for maximising the value of XML documents.

Chapter four looks at specific XML vocabularies, from SOAP to DocBook to XForms.

Chapter five moves on to schema languages, and covers DTDs, W3C Schemas and RELAX NG. It includes schema creation, validation, conversion between schema languages. It also covers the creation of schemas from instances, which is particularly useful if you have existing XML documents which are without schemas. As with the other hacks in the book, this chapter makes good use of open-source tools.

Chapter six is about a specific application area: syndication. RSS and Atom are both XML technologies. The hacks in this section are about using syndicated feeds and also how to create them. RSS 0.91, 1.0 and 2.0, as well as Atom are all covered.

The final chapter looks at a miscellaneous set of tasks which are classed as 'advanced'. This is a mixed bag of activities including generating XML from JavaScript, using Cocoon, processing XML with C#, using SAX and more.

This isn't a book for reading cover to cover. Chances are that some of the hacks you are simply not going to be interested in, but these are most likely going to be balanced by the areas that do interest you. Even if the hacks are not directly useful, there is still plenty to learn and reuse. This is a useful addition to an XML bookshelf for sure.

Hit the 'back' key in your browser to return to subject index page

Return to home page

Contents © TechBookReport 2004. Published November 29 2004