Most Helpful Customer Reviews
|
|
6 of 8 people found the following review helpful:
4.0 out of 5 stars
A good 3rd edition, but some experience is still required, January 11, 2007
Two APIs discussed in the second edition - JDOM and JAXB - saw important changes between the prerelease versions and their eventual final releases. These changes are covered in this latest edition. This book is organized into three sections. The first section, composed of Chapters 1 and 2, is a basic introduction to XML and related standards. However, the introduction is fast-paced, and if you have not seen XML before it probably won't be enough. The second part of the book - Chapters 3 through 11 - explains a wide variety of APIs for creating, manipulating, outputting, and pretty much doing anything else to XML documents. If you already know XML and Java, these chapters are excellent. If not, again, you are going to have difficulty as the material is fast paced. The last section - Chapters 12 and 13 - describes two important applications for XML. Chapter 14 stands alone as a chapter of predictions about the future of XML. The following is a description of the book in the context of the table of contents:
Chapter 1, Introduction, begins with the basics of XML. If you've never used XML before, this chapter will give you all the information you need to understand the rest of the book. It briefly touches on the changes between XML 1.0 and 1.1 before introducing XSLT and XPath.
Chapter 2, Constraints, covers three ways of defining the structure of XML documents: DTDs, W3C XML Schemas, and RELAX NG schemas. It covers how to use these standards to define a structure and how to ensure that a document matches that definition. It also covers how to convert between the various constraint document types.
Chapter 3, SAX, the Simple API for XML (SAX) is introduced in this chapter. The parsing lifecycle is explained, and the events that can be caught by SAX and used by developers are demonstrated via code examples.
Chapter 4, Advanced SAX, covers less-used but still powerful items in SAX. You'll learn how to use SAX features and properties to alter the behavior of the SAX parser, use XML filters to chain callback behavior, use XML writers to output XML with SAX, and look at some of the less commonly used SAX handlers like LexicalHandler and DeclHandler.
Chapter 5, DOM, unlike SAX has its origins in the World Wide Web Consortium. Whereas SAX is public domain software, DOM is a standard just like the actual XML specification. The DOM is designed to represent the content and model of XML documents across all programming languages and tools. In this chapter you learn DOM basics, find out what is in the current specification (DOM Level 3), and how to read and write DOM trees.
Chapter 6, DOM Modules, is about the various Level 2 and Level 3 DOM modules like Traversal, Range, Events, Style, HTML, Load and Save, and Validation.
Chapter 7, JAXP, examines the Java API for XML Processing (JAXP), including the XPath and Validation APIs introduced with JAXP 1.3. JAXP was initially a very small API that handled only parsing. The latest version of JAXP provides everything in SAX and DOM, plus some extras, and JAXP makes vendor neutrality much easier than using DOM or SAX directly.
Chapter 8, Pull Parsing With StAX, concerns The Streaming API for XML (StAX), which is the newest standard Java XML API. You'll learn how to use StAX and how it compares to both SAX and DOM. There is also a brief look at a precursor to StAX named XMLPull, which is still in use.
Chapter 9, JDOM, examines a Java-specific object model API. JDOM provides a means of accessing an XML document within Java through a tree structure, and in that respect is somewhat similar to the DOM.
Chapter 10, dom4j, examines another Java-specific object model API, dom4j. This chapter compares it to both JDOM and DOM. Also examined are features unique to dom4j, like its object-orientated transformation API.
Chapter 11, Data Binding with JAXB, talks about how with data binding, your application code does not concern itself with the details of XML documents, only a Java object model. Sun has developed a standard for XML data binding: the Java Architecture for XML Binding (JAXB). In this chapter, you'll learn about JAXB 1.0 and 2.0, as well as the general basics of data binding and when its use is appropriate.
Chapter 12, Content Syndication with RSS, covers using XML documents to syndicate content. Specifically, the RSS standards are examined along with a brief discussion of Atom. The creation and reading of RSS feeds using other APIs are discussed as well as an RSS-specific API named ROME. A highlight is the creation of your own podcast feed for submission to Apple's iTunes Podcast directory using this tool.
Chapter 13, XML As Presentation, looks at a variety of techniques for using XML in visual portion of web applications. The chapter shows how XML is a key component of the dynamic web application techniques that are becoming more common.
Chapter 14, Looking Forward, provides some brief overviews of several XML technologies. Included topics are XML appliances, XQuery, and Fast Infoset.
Appendix, SAX Features and Properties, details the features and properties available to SAX 2.0 parser implementations.
A good companion to this book is "Processing XML with Java(TM): A Guide to SAX, DOM, JDOM, JAXP, and TrAX" by Elliot Rusty Harold. The book is a little older, so standards have changed, but it does a good job of explaining things at a slower pace than this book. This book is better for the newer standards and applications. If you are working with XML and Java, you should probably have both books.
|
|
|
1 of 1 people found the following review helpful:
4.0 out of 5 stars
Best book on working directly with XML in Java, April 21, 2009
This is probably the best book currently out about working directly with XML and Java. It seems to be the most up to date with respect to coverage of the most commonly used Java XML APIs. The book gives a good overview of SAX, StAX, DOM, JDOM, dom4j, and JAXB. In reading the book, I got a good sense of the ideas behind the different API's. I also got a good sense of and when and how to use them. After looking through many other Java-XML books, this one is my first choice. The book still functions well for me as a reference when I have an XML processing task that I need to do in Java.
|
|
|
1 of 1 people found the following review helpful:
4.0 out of 5 stars
Good for early XML w/ Java info, February 3, 2009
I'm not using the technology in this book right now, and just wanted an overview of Java and XML together. I never expected this book to be super-in-depth, if it was covering this broad space in a book that isn't huge.
The good points: I found the book fairly easy to read for at least the first third of the book. The rest seemed a bit dry, but I think that is largely because I was getting out of my depth. Once I'd worked with the early material some, I think the later material would have been more readable.
I got the information I was looking for, which was an overview of XML and how it connects to other tools in real life. The book also had lots of ideas for further reading. Handy.
The bad points: The author seems to have a blatant open-source bias. While that isn't shocking in a Java book, it does come across as a bit unprofessional, is somewhat little minded, and is distracting from the key subject matter.
Also, while this was a good overview, I was left feeling that more could have been said about XML, Java, web services, and working with client-server architectures. Another reviewer mentioned that these chapters were dropped from a previous edition. I will probably be looking for that previous edition to see if I like it better.
Of several XML books I've looked through, this is the only one so far I would consider buying. However, I will also be considering getting a more in-depth book for my bookshelf after checking this one out of the library for an introduction to the subject.
|
|
|
Most Recent Customer Reviews
|