Back in 2001, XML is something truly new that has not been seen before in the world of computing. There have been precursors to it, and there are always fanatics who insist on seeing XML through database (or object, or functional, or S-expression) colored glasses. But XML is none of these things. It is something genuinely unique and new in the world of computing; and it can only be understood when you're willing to accept it on its own terms, rather than forcing it into yesterday's pigeon holes.
There are a lot of tools, APIs, and applications in the world that try to pretend XML is something more familiar to programmers; that it's just a funny kind of database, or just like an object, or just like remote procedure calls. These APIs are occasionally useful in very restricted and predictable environments. However, they are not suitable for processing XML in its most general format. They work well in their limited domains, but they fail when presented with XML that steps outside the artificial boundaries they've defined. XML was designed to be extensible, but it's a sad fact that many of the tools designed for XML aren't nearly as extensible as XML itself.
Processing XML with Java
is going to show you how to handle XML in its full generality. It pulls no punches. It does not pretend that XML is anything except XML, and it shows you how to design your programs so that they handle real XML in all its messiness: valid and invalid, mixed and unmixed, typed and untyped, and both all and none of these at the same time. To that end, this book focuses on those APIs that don't try to hide the XML. In particular, there are three major Java APIs that correctly model XML, as opposed to modeling a particular class of XML documents or some narrow subset of XML. These are:
, the Simple API for XML
, the Document Object Model
, a Java native API
These APIs are the core of this book. In addition I cover a number of preliminaries and supplements to the basic APIs including:
- XML syntax
s, schemas, and validity
and the TrAX API
, a combination of SAX, DOM, and TrAX with a few factory classes
And, since we're going to need a few examples of XML applications to demonstrate the APIs with, this book also covers XML-RPC
, and RSS
in some detail. However, the techniques this book teaches are hardly limited to just those three applications.
This book is meant for Java programmers who need to do anything with XML. It teaches the fundamentals and advanced topics, leaving nothing out. It is a comprehensive course in processing XML with Java that takes developers from little knowledge of XML to designing sophisticated XML applications and parsing complicated documents. The examples cover a wide range of possible uses including file formats, data exchange, document transformation, database integration, and more.
This is not an introductory book with respect to either Java or XML. This book assumes you have substantial prior experience with Java and preferably some experience with XML.
:) Anyone who is working with Java and XML should have a copy of this book. Highly example driven with clear explanations, the author makes using XML in your Java programs a breeze.
:) This is definitely a valuable resource for anybody dealing with XML and Java, written by one of the best tech writers in town.