This is an excellent book for either a newbie or a seasoned programmer
I was looking for a book that would introduce the overall concepts of the many XML technologies and give me a chance to play with them on my own. Although this book is not accompanied by a CD, I would prefer to enter the code myself and learn from making a mistake here and there. The concepts are very clearly described in concise and meaningful language in this book with a wealth of examples.
I give this book my highest recommendation. There is now a third edition out, but this one contains meaningful and approachable examples and should not be overlooked.
P.S. I got my copy of this book while attending a course being offered by the author. Aside from being well-written, Devan Shepherd is an excellent instructor. If you have the chance to take one of his courses, or attend one of his talks, don't miss the opportunity. He is entertaining and highly knowledgable.
Much too wordy in all the wrong places
I usually don't say anything unless I have something nice to say, but I feel the positive reviews for this book are highly overrated. I'm quite stunned by how much copy the author of this book managed to churn out on what otherwise could have been a concise and to-the-point tutorial. Do I really need to read through 7 paragraphs on the decision-making process of the W3C before I can learn about XML schemas...? While some may find that kind of information thorough, I find it distracting. The reviewers who feel this book was well-written obviously don't think good writing should be compelling. The writing style, while organized and grammatically correct, is very very dry and repetitious. The tone reminds me of the more boring professors I had in college. There is no humor or person-to-person feel you get with writers like Laura Lemay. Even given the author's verbosity, the book (almost flagrantly) glosses over what I felt should have been the most important lesson: the XSD schema language, which most people agree to be the standard syntax for XML. If you want an efficient introduction to XML, you are better off running through the online tutorials offered on the w3schools website.
Recommend
Wonderful book if you have enough time to type all codes. No CD comes with this book, no source codes available.
Best Survey of XML on the Market
I was looking for a book that would introduce XML and show me some real code examples of how to use it. I got that and more from this book. It is really well written - the author is more than a techies, he knows how to write and present complex concepts in understandable language. There is a lot of material in this book. As the author points out, this is a 21-day study of XML, you can't cover every single aspect of every one of the many technologies that are part of the XML family of tools, but somehow this book manages to cover the most useful of waht is available.
There is something for everyone in this book. If you like to write Java, there are examples in Java, there are also examples in JavaScript, VBScript, VB, various databases and three or four different browsers. The parsers used include Saxon, Xalan, XT, MSXML, Apache, and all sorts of others. Best of all, as the author points out, if you can appreciate the relatively simple underlying constructs, it really doesn't matter what language you choose to write in. This is excellent since it helps to prove that XML is platform agnostic and can be programmed in almost any language and used in almost any toolset.
We have used some of the code out examples right out of the book to create a data-centric XML application for transaction exchange. The best part of this is that our business partners have different platforms and different programming environments and that doesn't matter at all, since we are all speaking XML when it comes to exchanging data. I learned how to do this by reading this book and working along with the examples provided.
My only regret with regard to this book is that it didn't include more than 21 days worth of material - I would have liked 42 days! This was such a good read, I found myself wanting more at the end of it.
I really got my money's-worth and more from this book, recommend it highly and can't wait to read whatever this author writes next. If you are looking for a very well-written survey of fundamental XML concepts, that covers a wide variety of the basic technologies, and touches various tools and platforms - try this book.
Where to begin? Too many negative points to list.
Admittedly, XML is not a mature technology, and a thorough treatment (or even introduction) to the changing landscape of XML is a challenge. But this book fell far too short of its goal.Too many inconsistencies to ignore. Many "refer to" captions where the code or screenshot did not match the comment. Some supporting information was only depicted in these missing items, so of course, the reader was left with no context for the caption.
Too many code samples that did not work. Speaking of code samples, this book had the smallest amount of samples I've seen in any of the "21 Days" books I have read (6). The code samples included did not begin to describe the text of the book. For example, in the DOM chapter, the author listed roughly 20 properites and 20 methods--yet only two properties, and one method were shown via code samples. Thoroughly disappointing. Further, the author chose to describe only Microsoft's implementation of the DOM! Odd, yes, even odder when you read below that in a later chapter, the author eschews the parser he already told you to download so he can explain the SAX in Java.
Let me intersperse a semi-positive comment in the sea of negative ones. The author is clearly a good writer--sentences are well-constructed, and the author is good with words. Unfortunately, he is not as good at instructing.
Another problem--the book was published in August 2001, but is already out of date. How can this be? Obviosuly, many chapters were written long ago, and were not rewritten to address any new specifications or emerging standards. While DTD's and XDR are still used, I feel that XSD should have been covered in much more detail--after all, it's the W3C's recommendation, so it should be emphasized.
Another general annoyance: I got sick of seeing text like this: "we haven't covered these features, but. . . " when commenting on the sparse sample code provided.
Chapter on SAX: useless to me. Why? I don't know Java. Instead of using the MSXML parser used throughout the rest of the book, the author chose to use Sun's Java parser for the SAX chapter. I have no clue why. Plenty of code samples in this chapter--kudos! In fact 65% of the chapter was samples--too bad I don't know Java.
Scope was also a problem. For example, namespaces is an easy concept to understand, but the author spent 15 pages explaining them. XSD, a little more difficult to understand, but didn't receive much more attention.
I could go on, but I will spare you. Postive side: author is clearly a good writer, and some chapters were top notch. But the inconsistencies were disturbing--detail, skim, detail, skim. In the author's defense, this is an evolving topic, and a thorough, current treatment is next to impossible. I suspect that only Wrox's multiple author approach could do XML justice at this stage of the game.