• RRP: £30.99
  • You Save: £3.96 (13%)
FREE Delivery in the UK.
Only 1 left in stock.
Dispatched from and sold by Amazon.
Gift-wrap available.
Trade in your item
Get a £0.29
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Effective XML: 50 Specific Ways to Improve Your XML (Effective Software Development) Paperback – 22 Sep 2003

See all 2 formats and editions Hide other formats and editions
Amazon Price New from Used from
"Please retry"
£16.00 £12.07

Trade In Promotion

Trade In this Item for up to £0.29
Trade in Effective XML: 50 Specific Ways to Improve Your XML (Effective Software Development) for an Amazon Gift Card of up to £0.29, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Product details

  • Paperback: 336 pages
  • Publisher: Addison Wesley; 1 edition (22 Sep 2003)
  • Language: English
  • ISBN-10: 0321150406
  • ISBN-13: 978-0321150400
  • Product Dimensions: 17.8 x 2 x 23.1 cm
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: 908,736 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Discover books, learn about writers, and more.

Product Description

From the Back Cover

Praise for Effective XML

“This is an excellent collection of XML best practices: essential reading for any developer using XML. This book will help you avoid common pitfalls and ensure your XML applications remain practical and interoperable for as long as possible.”

     —Edd Dumbill, Managing Editor, XML.com and Program Chair, XML Europe

“A collection of useful advice about XML and related technologies. Well worth reading both before, during, and after XML application development.”

     —Sean McGrath, CTO, Propylon

“A book on many best practices for XML that we have been eagerly waiting for.”

     —Akmal B. Chaudhri, Editor, IBM developerWorks

“The fifty easy-to-read items cover many aspects of XML, ranging from how to use markup effectively to what schema language is best for what task. Sometimes controversial, but always relevant, Elliotte Rusty Harold’s book provides best practices for working with XML that every user and implementer of XML should be aware of.”

     —Michael Rys, Ph.D., Program Manager, SQL Server XML Technologies, Microsoft Corporation

Effective XML is an excellent book with perfect timing. Finally, an XML book everyone needs to read! Effective XML is a fount of XML best practices and solid advice. Whether you read Effective XML cover to cover or randomly one section at a time, its clear writing and insightful recommendations enlighten, entertain, educate, and ultimately improve the effectiveness of even the most expert XML developer. I’ll tell you what I tell all my coworkers and customers: You need this book.”

     —Michael Brundage, Technical Lead, XML Query Processing, Microsoft WebData XML Team

“This book provides great insight for all developers who write XML software, regardless of whether the software is a trivial application-specific XML processor or a fullblown W3C XML Schema Language validator. Mr. Harold covers everything from a very important high-level terminology discussion to details about parsed XML nodes. The well-researched comparisons of currently available XML-related software products, as well as the key criteria for selecting between XML technologies, exemplify the thoroughness of this book.”

     —Cliff Binstock, Author, The XML Schema Complete Reference

If you want to become a more effective XML developer, you need this book. You will learn which tools to use when in order to write legible, extensible, maintainable and robust XML code.

Page 36: How do you write DTDs that are independent of namespace prefixes? Page 82: What do parsers reliably report and what don't they? Page 130: Which schema language is the right one for your job? Page 178: Which API should you choose for maximum speed and minimum size? Page 257: What can you do to ensure fast, reliable access to DTDs and schemas without making your document less portable? Page 283: Is XML too verbose for your application?

Elliotte Rusty Harold provides you with 50 practical rules of thumb based on real-world examples and best practices. His engaging writing style is easy to understand and illustrates how you can save development time while improving your XML code. Learn to write XML that is easy to edit, simple to process, and is fully interoperable with other applications and code. Understand how to design and document XML vocabularies so they are both descriptive and extensible. After reading this book, you'll be ready to choose the best tools and APIs for both large-scale and small-scale processing jobs. Elliotte provides you with essential information on building services such as verification, compression, authentication, caching, and content management.

If you want to design, deploy, or build better systems that utilize XML—then buy this book and get going!

About the Author

Elliotte Rusty Harold is an internationally respected writer, programmer, and educator. He is an Adjunct Professor of Computer Science at Polytechnic University in Brooklyn, where he lectures on Java and object-oriented programming. His Cafe con Leche Web site has become one of the most popular sites for information on XML. In addition, he is the author and coauthor of numerous books, the most recent of which are The XML Bible (John Wiley & Sons, 2001) and XML in a Nutshell (O'Reilly, 2002).


Customer Reviews

4.5 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See both customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

4 of 4 people found the following review helpful By Thomas Paul on 3 April 2004
Format: Paperback
Imagine you are given the opportunity to ask one of the leading experts on XML 50 questions. And further imagine that this expert will answer those questions clearly and completely. You can stop imagining because Elliotte Rusty Harold has done exactly that in this book. Whether you are a relative newbie or an experienced XML developer, you will find useful information in this book. Should I use DOM or SAX? What's the right way to encode binary data? When should I use processing instructions? Should I use XML 1.1? Do I really need to parse my documents? This is just a random sample of the questions that Harold answers in this book. Every page contains valuable information. Harold is unusual in that even though he is an expert he still remembers what it is like to not know something. His explanations don't leave any blanks that you need to fill in. There are no jumps from point A to point Z without taking you through the points in between.
So who should buy this book? Anyone who has some knowledge of XML who is interested in working with XML the right way. Whether you are developing applications to process or create an XML document or whether you are simply designing an XML document you need to read this book. Once you understand the basics of XML, this book will take you to the next step of being able to work with XML effectively.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By G. Gilmour on 28 Feb 2004
Format: Paperback
As with 'Effective C++' and 'Effective Java' this is a 'so you know how to use it - this is how you use it right' book.
The book does a great job of organising the presenting the 'folk wisdom' that most developers accumulate when they spend an extended period of time playing with XML/XSLT/DOM etc... I found it a very enjoyable read and wish I had it available when I started using XML in my projects.
Although definitely recommended to XML beginners and intermediates there isnt a lot here for experienced XML developers. There were several points where I felt there wasnt the level of detail I expected (for example XML + CSS), hence four stars rather than five.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Helpful Customer Reviews on Amazon.com (beta)

Amazon.com: 16 reviews
20 of 20 people found the following review helpful
A Maturing and More Sophisticated XML 27 Sep 2003
By W Boudville - Published on Amazon.com
Format: Paperback
... Harold has put together an advanced overview of ALL
A significant part of the value of this book is in Harold's assessment of the various proposed extensions to XML, like the XML Schema language, or the abovementioned XLink and XQuery. XML is still growing rapidly, and there is a real need for various extensions. But there is also a consequent need for
independent comparative assessments of those extensions. For example, if you have a book devoted to XML Schema, it might not even tell you that there are other competing schema languages.
En passant, he gives an unusually clear explanation of the difference between a character set and a character encoding. The former is a mapping of some characters to numbers. The latter is an instantiation of those numbers as an actual numerical storage. Often in other books, you can see the two phrases used interchangeably and imprecisely. By contrast,
throughout this book Harold emphasises a precision of terminology. A priori, if you are into XML, then you need to be precise.
I have one minor quibble. He says that multiple XML documents "can be stored in a single file, though this is unusual in practice." He might have added that one of these instances is instructive. If you have a continuously running program that periodically writes to a log file in XML, then during the writing, for efficiency, you would append XML documents to the file. So notice that at all times, the entire file is not an XML document, because there are no enclosing tags.
16 of 17 people found the following review helpful
The best XML book I've read 22 Oct 2004
By Norman Richards - Published on Amazon.com
Format: Paperback Verified Purchase
Effective XML is a collection of about 50 tips for working with XML. Although XML seems is simple and easy to use, it's also easy to get wrong. I've often scratched your head and wondered why things like XML Schema, for example, just doesn't feel right. But it wasn't until I read Effective XML that I understood what was really awkward with it.

Because the book is so diverse (an amazing feat considering the small page count), it is hard to single out any specific part as being a reason to read the book. The book doesn't just talk about schemas, the infoset, etc..., it digs down and really explains what is good and bad about the technologies and what the best ways to apply them are. All I can say is that I use XML day in and day out and have learned everything I know by trial an error. I've made many mistakes along the way. I've tried my best to learn from them, but Effective XML was the book that made everything click for me. The best part is that the book went well beyond just helping me see my errors. I've already applied some of the ideas to new work I've done recently and have been able to head off some of the problems I would have encountered.

Effective XML is by far the best XML book I've ever read, and quite possibly the best tech book I've read all year. I might even have to add it to my favorite tech books list. If you work with XML to any significant degree, I can't recommend this book highly enough.
10 of 11 people found the following review helpful
I wish the XML Schema working group had a copy per member 10 July 2005
By SteveL - Published on Amazon.com
Format: Paperback
This is not a book explaining XML. This is not a book that goes into any depth on XML APIs. It is not a book explaining any one XML format like XSLT, RSS, or XSD.

Instead it is a book on how to work with XML. How to design an XML application to take full advantage of the facilties of XML: schemas, processing instructions, XSL transforms, namespaces. It is all structured to slowly introduce you into the complexities, and deserves to sit up on the bookshelf with Effective C++, Java and Enterprise Java.

If you already know the basics of XML, it is actually quite a good way to learn about some of the more esoteric concepts -from the pragmatic perspective. Too many XML books rant about how wonderful some feature like XML schema's extension stuff is, why XML is the most universal format ever, SOAP and WS-* the best protocol for distributed systems ever, and XQuery everything you need for an XML database.

This book bursts the bubble of hype with rational analysis of what makes sense, and what doesn't. Item 28: Use only what you need, is my favourite: A review of the main XML specs and analysis of what really matters, which comes down to #35, navigate with XPath.

If you are designing an XML schema/system/application, you need this book. If you have to put up with architects telling you about WS-MetadataExchange, WS-Transfer and RDF, you need a copy to roll up and hit them over the head. And, if like me, you are involved in standards bodies that produce XML related things, you need to buy a copy for all the other participants, so that what you produce will actually work.

Remember that XML is a language designed for use by people and machines. The machines have the upper hand. But with this book, and some thinking, you can design XML applications that people can use.
12 of 14 people found the following review helpful
A must have for the serious XML practitioner 29 Nov 2003
By Foti Massimo - Published on Amazon.com
Format: Paperback
There are plenty of generic XML books out there, plus a bunch of titles that focus on specific XML applications or XML related topics (SOAP, XSLT, XML Schema etc); what Mr Harold delivered this time is something different, that really stands out from everything else available at the time of this writing. This book is about best practices, patterns and anti-patterns, and about how to use XML correctly and efficiently. As with other titles from the same author, this book is a pleasure to read, clean, informative and well structured. In my opinion a must have for the serious XML practitioner. Be advised this is not a book for beginners, the author takes for granted you already mastered the fundamentals of XML and many related technologies like DTD, Schema or Namespace. In order to really get the best out of it you better have some experience using XML under your belt.
17 of 21 people found the following review helpful
Another excellent "Effective" book 3 Nov 2003
By uniq - Published on Amazon.com
Format: Paperback
Who nowadays does not know what is XML? There has been so much hype around it,
that some people think that XML is a programming language, a
database, or both at the same time :).
On the other hand, if you are a developer, chances are that you feel that
there is not much to it. After all, it may take just a few hours to get the
hang of creating and parsing an XML document. Maybe this is why most of
the voluminous books discuss numerous XML-related technologies, but not the XML usage itself.
Elliotte Rusty Harold in "Effective XML: 50 Specific Ways to Improve Your
XML" takes a different approach: know your elements and tags :) -- they are
not the same thing! -- and weigh your choices in a context, because any
technology applied for the wrong reasons may fail to deliver on its
Following Scott Myers' groundbreaking "Effective C++", the author invites us
to re-evaluate seemingly trivial issues to discover that life is not as
simple as it seems in the world of XML. In each of the 50 items (chapters)
he gets into the inner workings of the language, its usage and related
standards, thus giving us specific advices on how to use XML correctly and
The 300-page book is divided into four parts: Syntax, Structure, Semantics,
and Implementation. Yet in the Introduction the author sets the tone by
discussing such fundamental issues as "Element versus Tag", "Children versus
Child Elements versus Content", "Text versus Character Data versus Markup",
etc. On these first pages the author started earning my trust and admiration
for his knowledge and ability to get right to the point in a clear and
simple language.
The first part, Syntax, contains items covering issues related to the
microstructure of the language and the best practices in writing legible,
maintainable, and extensible XML documents. In it, over 19 pages are
dedicated to the implications of the XML declaration <?xml version=...> !
Doesn't it seem a lot for one XML statement that most people cut-and-paste
at the top of their XML documents without giving it much thought? Actually
not, if you follow the author's reasoning and examples.
The second part, Structure, discusses issues that arise when creating data
representation in XML, i.e. mapping real-world information into trees,
elements, and attributes of an XML document; it also talks about tools and
techniques for designing and documenting namespaces and schemas.
The third part, Semantics, explains the best ways to convert structural
information represented in XML documents into the data with its semantics.
It teaches us how to choose the appropriate API and tools for different
types of processing to achieve the best effect. This chapter has a lot of
good advise to make the solutions simple, effective, and robust.
The final part, Implementation, advices on the systems' design and
integration issues related to the utilization of XML; the issues like data
integrity, verification, compression, authentication, caching, etc.
This book will be useful to a professional with any level of experience. It
may be used as a tutorial and read from the cover to cover, or one can enjoy
reading selected items, depending on the experience and taste. The book's
very detailed index makes it an excellent reference on the subject as well.
In the Prefix to the book the author writes, "Learning the fundamentals of XML might
take a programmer a week. Learning how to use XML effectively might
take a lifetime." I am not sure about the "lifetime" -- it is awfully
long time for using one technology -- but for the most confident of us this
still may not be enough :) . Your term may vary, but I suspect that you
could shave off it at least a few months by browsing through it once in a
while. Most importantly, this will make you a better professional and make
you proud of the results of your work. Wouldn't this worth your while?
Were these reviews helpful? Let us know