Also check out XSLT Quickly, a tutorial and users guide to XSLT.

[Ann. Spec book cover]

XML: The Annotated Specification

by Bob DuCharme

ISBN 0-13-082676-6

Order online from at 20% off list price

Excerpt from Wendell Piez's Review in "Markup Languages: Theory and Practice," Volume 1, Issue 3

"DuCharme's annotations can be usefully compared to those of Tim Bray, a co-editor of the specification, as they appear on the World Wide Web (at Where Bray presents advice on how to go about reading and interpreting the specification (which sections are important, which need clarification, etc.), his annotations do not provide as much direct explanation as DuCharme's. (Where they do, they are effective and to the point, but as a whole they are necessarily more succinct for the web medium. They also have the advantage of hypertext links for relating parts of the spec to one another). DuCharme's notes are more extensive, more elementary, and probably of more direct help to the new user, giving more attention to the underlying concepts, for example, of element content modeling."

Bombastic Back Cover Text

There are many books about XML, but the official W3C specification is the single most important document of all. Its language, however, is so concise and full of technical computer science terms that it was difficult for most people to understand--until now.

"XML: The Annotated Specification" gives readers at all technical levels a full understanding of the final word on XML. This book provides:

Being able to find and understand the official word on any XML issue will make any reader an XML expert, regardless of their background. And, as a reference book, you'll come back to "XML: The Annotated Specification" again and again.

About the Author: Bob DuCharme is a senior software engineer at Moody's Investors Service, where he oversees the implementation of XML and SGML technology in the publishing systems. He is also the author of "SGML CD" and "The Operating Systems Handbook."

Table of Contents

Annotation Introduction
    This Book and the XML Specifications
    HTML, SGML, and XML: History and Influences
        HTML and SGML
        HTML and Structure
        Cascading Style Sheets
        HTML and Standards
        SGML Web Pages?
        The Solution: XML
    XML, XLink, XPointer, and XSL
        XML, Hypertext, XLink, and XPointer
        XML, Stylesheets, Scripting, and XSL
    The Annotations
        A Note on the Punctuation
Specification Preface
1. Introduction
    1.1 Origin and Goals
    1.2 Terminology
2. Documents
    2.1 Well-Formed XML Documents
    2.2 Characters
    2.3 Common Syntactic Constructs
    2.4 Character Data and Markup
    2.6 Processing Instructions
    2.7 CDATA Sections
    2.8 Prolog and Document Type Declaration
    2.9 Standalone Document Declaration
    2.10 White Space Handling
    2.11 End-of-Line Handling
    2.12 Language Identification
3. Logical Structures
    3.1 Start-Tags, End-Tags, and Empty-Element Tags
    3.2 Element Type Declarations
        3.2.1 Element Content
        3.2.2 Mixed Content
    3.3 Attribute-List Declarations
        3.3.1 Attribute Types
        3.3.2 Attribute Defaults
        3.3.3 Attribute-Value Normalization
    3.4 Conditional Sections
4. Physical Structures
    4.1 Character and Entity References
    4.2 Entity Declarations
        4.2.1 Internal Entities
        4.2.2 External Entities
    4.3 Parsed Entities
        4.3.1 The Text Declaration
        4.3.2 Well-Formed Parsed Entities
        4.3.3 Character Encoding in Entities
    4.4 XML Processor Treatment of Entities and References
        4.4.1 Not Recognized
        4.4.2 Included
        4.4.3 Included If Validating
        4.4.4 Forbidden
        4.4.5 Included in Literal
        4.4.6 Notify
        4.4.7 Bypassed
        4.4.8 Included as PE
    4.5 Construction of Internal Entity Replacement Text
    4.6 Predefined Entities
    4.7 Notation Declarations
    4.8 Document Entity
5. Conformance
    5.1 Validating and Non-Validating Processors
    5.2 Using XML Processors
6. Notation
A. References
    A.1 Normative References
    A.2 Other References
B. Character Classes
C. XML and SGML (Non-Normative)
D. Expansion of Entity and Character References (Non-Normative)
E. Deterministic Content Models (Non-Normative)
F. Autodetection of Character Encodings (Non-Normative)
G. W3C XML Working Group (Non-Normative)
Supplementary Annotations
    Grammars, Productions, and Computer Languages
        Terminals and Nonterminals
        Syntax of Productions
    Becoming a W3C Recommendation
    W3C Document Copyright Notice
Production Indexes
    By Production Number