I just spent 40 minutes speed reading the new Oreilly Perl & XML book. Not much larger then a pamphlet, the book packs an amazing amount of info into its svelte form.

It covers standards, tools, thought process, programming tips, and history in an effortless breezy tone. Up-to-date, fun, informative, and useful, the authors steer clear of the shoals so many XML books and articles flounder on – merely re-hashing the W3C spec (this is a tag, this is a processing insturction, this is what well formed means) – without skimping on theory. I really want to convery how much fun this book was to read. (and not because of the authors’ semi-lame geeky sense of humor)

What Have I Gained

I now have at my finger tips: - an understanding of how Perl’s various XML parsing solutions fit together, including some of the brand new work being done by Matt Seargant and crew

  • several in-depth examples of proper parsing code (beyond the trivial examples usually given)
  • a peek into the mind and thought process of the authors of XML::RSS

A Balanced Approach

The only thing really missing is processing instructions. Ray and McIntosh wisely (in my opinion) choose not take the time to belabour PIs, and other esoterics, and yet do not fall into assuming I would be parsing simple, 1-depth key-value pairs. ### And now for something completely different

In sharp contrast, New Riders XML & PHP, I almost put down on page 20 when they blithely informed me expat was a compliant sax parser. Sure expat occupies an important, and sometimes confusing place in XML parsers (being pre the existence of parsing standards) but somehow Ray & McIntosh handled this point gracefully, smoothly dovetailing into a discussion of XML::Parser. New Riders’ authors seem ignorant of key issues in comparision. The book continues down on from there, disorganized, with no sense of perspective. It does manage to cover a few of the gotchas that slip through PHP’s pratically non-existent documentation. (of the XML parsing facilities) But not many. Other complaints:

  • a whole chapter on WDDX? does anyone use this Allaire orphan?
  • did the world need yet another half-assed example of parsing RSS with PHP? they could have really made a name for themselves by doing a decent job of it.