This powerful new edition provides developers with a comprehensive guide to the rapidly evolving XML space. Serious users of XML will find topics on just about everything they need, from fundamental syntax rules, to details of DTD and XML Schema creation, to XSLT transformations, to APIs used for processing XML documents. Simply put, this is the only reference of its kind among XML books.
Whether you're a Web designer using SVG to add vector graphics to web pages, or a C++ programmer using SOAP to serialize objects into a remote database, XML in a Nutshell thoroughly explains the basic rules that all XML documents -- and all XML document creators -- must adhere to, including:
Essentials of the core XML standards: With this book, you can develop an understanding of well-formed XML, DTDs, namespaces, Unicode, and W3C XML Schema quickly.
Key technologies used mainly for narrative XML documents such as web pages, books, and articles: You'll gain a working knowledge of XSLT, Xpath, Xlink, Xpointer, CSS, and XSL-FO.
Technologies for building data-intensive XML applications, and for processing XML documents of any kind: One of the most unexpected developments in XML has been its enthusiastic adoption for structured documents used for storing, and exchanging used by a wide variety of programs. This book will help you understand the tools and APIs needed to write software that processes XML, including the event-based Simple API for XML (SAX2) and the tree-oriented Document Object Model (DOM).
Quick-reference chapters also detail syntax rules and usage examples for the core XML technologies, including XML, DTDs, Xpath, XSLT, SAX, and DOM. If you need explanation of how a technology works, or just need to quickly find the precise syntax for a particular piece, this up-to-date edition is ready with the information.
XML in a Nutshell is an essential guide for developers who need to create XML-based file formats and data structures for use in XML documents. This is one book you'll want to close at hand as you delve into XML.
Chapter 1 Introducing XML
The Benefits of XML
How XML Works
The Evolution of XML
Chapter 2 XML Fundamentals
XML Documents and XML Files
Elements, Tags, and Character Data
The XML Declaration
Checking Documents for Well-Formedness
Chapter 3 Document Type Definitions (DTDs)
General Entity Declarations
External Parsed General Entities
External Unparsed Entities and Notations
Two DTD Examples
Locating Standard DTDs
Chapter 4 Namespaces
The Need for Namespaces
How Parsers Handle Namespaces
Namespaces and DTDs
Chapter 5 Internationalization
The Encoding Declaration
XML-Defined Character Sets
ISO Character Sets
Platform-Dependent Character Sets
Converting Between Character Sets
The Default Character Set for XML Documents
Chapter 6 XML as a Document Format
Narrative Document Structures
Transformation and Presentation
Chapter 7 XML on the Web
Direct Display of XML in Browsers
Authoring Compound Documents with Modular XHTML
Prospects for Improved Web-Search Methods
Chapter 8 XSL Transformations (XSLT)
An Example Input Document
xsl:stylesheet and xsl:transform
Templates and Template Rules
Calculating the Value of an Element with xsl:value-of
Applying Templates with xsl:apply-templates
The Built-in Template Rules
Attribute Value Templates
XSLT and Namespaces
Other XSLT Elements
Chapter 9 XPath
The Tree Structure of an XML Document
Compound Location Paths
Unabbreviated Location Paths
General XPath Expressions
Chapter 10 XLinks
DTDs for XLinks
Chapter 11 XPointers
XPointers on URLs
XPointers in Links
Chapter 12 Cascading Style Sheets (CSS)
The Three Levels of CSS
Associating Stylesheets with XML Documents
The Display Property
Pixels, Points, Picas, and Other Units of Length
Chapter 13 XSL Formatting Objects (XSL-FO)
XSL Formatting Objects
The Structure of an XSL-FO Document
Laying Out the Master Pages
Choosing Between CSS and XSL-FO
Chapter 14 Resource Directory Description Language (RDDL)
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The bird on the cover of XML in a Nutshell, Second Edition, is a peafowl, the largest bird in the Phasianinae family, which also includes pheasants and turkeys. People often incorrectly call peafowl peacocks. Peacocks are actually male peafowl; the females are called peahens. Two wild peafowl species exist today: the Indian peafowl (Pavo cristatus) and the Green peafowl of Southeast Asia (Pavo muticus), which may be endangered. These wild peafowl live in musters of 8 to 12 birds in dense forest near water. Though they do not fly very well, and do so only for short distances, they do manage to escape most predators and roost peacefully at night, high up in treetops.
The peafowl's most famous characteristic, of course, is its beautiful fan of feathers, known as a "train." Each blue-green train feather has a dark spot on its tip that looks much like an eye. Peacocks develop especially brilliant plumage, an indicator of sexual maturity, by age three. A healthy peacock has a full and vibrant train each year during the spring mating season. During this period, peacocks strut their stuff-display their "breeding plumage," as it is called-to attract peahens. Scientists theorize that the peacock's performance plays upon the peahen's instinctive drives to find healthy mates in the hope of producing hardy offspring. Each summer after the mating season, peafowl shed their train feathers, which are often collected by humans as eye-catching souvenirs. Jeffrey Holcomb was the production editor and copyeditor for XML in a Nutshell, Second Edition. Jane Ellin and Sarah Sherman were the proofreaders. Matt Hutchinson, Tatiana Apandi Diaz, and Claire Cloutier provided quality control. Linley Dolby and Mary Brady provided production assistance. Judy Hoer wrote the index.
Ellie Volckhausen designed the cover of this book, based on a series design by Edie Freedman. The cover image is an original illustration created by Susan Hart. Emma Colby produced the cover layout with QuarkXPress 4.1 using Adobe's ITC Garamond font.
Melanie Wang designed the interior layout, based on a series design by David Futato. This book was converted to FrameMaker 5.5.6 with a format conversion tool created by Erik Ray, Jason McIntosh, Neil Walls, and Mike Sierra that uses Perl and XML technologies. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed. Additional fonts used in this book include TibetanMachine, Code2000, Adobe MathematicalPi2, and Adobe MathematicalPi6. The illustrations that appear in the book were produced by Robert Romano and Jessamyn Read using Macromedia FreeHand 9 and Adobe Photoshop 6. The tip and warning icons were drawn by Christopher Bing. This colophon was written by Sarah Jane Shangraw and Molly Shangraw.
Comments about O'Reilly Media XML in a Nutshell, 2nd Edition:
I am not a web designer, but rather a computer programmer. This book is tremendously helpful for someone like me, as it does not stop at the level of, "How can we use this in a website?". Rather, it extends far deeper that this, exploring the uses of XML as a means for storing database information, and as a way of manufacturing a portable file structure that, with the right parser, is just as versatile as Adobe's PDF format is for printed documents.
That said, this book will not teach you HTML, and some of the deeper sections, such as the chapters on schemas, APIs, DOMs, and database parsing assume knowledge of at least basic object-oriented programming, in a language like C++ or Java.
If you are familiar with at least simple XML, as explained in Oreilly's "Learning XML", though, the book will prove an indespensible reference for working with XML in whatever project you may be using it for, be it web design, database construction, or anything else that you can dream up.
By Antonio Rodriguez of the Columbia Java Users Group
Comments about O'Reilly Media XML in a Nutshell, 2nd Edition:
The Nutshell series of books from O'Reilly have a special section of my desk established for them; no other set of books condenses so much information for reference. This book is no exception to this fact.
Before I continue, please avoid buying an O'Reilly Nutshell book expecting it to teach you about the topic it is intended for. As far as I've worked with them, these books are not intended as a do-all be-all that other references want to be. The information introducing you to XML is sparse, so if you don't know anything about XML, get another book. I recommend XML: A Primer by Simon St. Laurent; it is an excellent learning tool, and though it doesn't go into all the detail the XML standard can go into (no book I've found can do such), it provides the user with understanding of XML.
XML in a Nutshell is what I use when I've forgotten how to use a certain aspect of XML detail. As a reference and a second book on XML, nothing comes close