Book Information


Authors: Erik Ray
Paperback: 432 pages
Publisher: O'Reilly Media, Inc.; 2 edition (September 22, 2003)
Language: English
ISBN: 0596004206
Product Dimensions: 9.4 x 6.8 x 1.0 inches Link

 Book Review

'Learning XML' of O'Reilly publications is a great title by the author Erik T. Ray as it provides the Web developers with a thorough introduction to XML and its capabilities along with plenty of real-life projects and useful examples. The book goes along with its title as for novice XML programmer it does a brilliant job illustrating the core XML concepts and language syntaxes.

The book effectively covers the basics of XML and explains how XML and XSL work together to create HTML, WAP etc. Some of the eye-catching aspects of the book are the strong historical explanation of XML giving its extensive background, the graphics and code samples providing a clear picture of the concepts as well as the overviews of the related specifications. Learning XML also discusses some of the style sheets needed for viewing documents in the next generation of browsers, databases, and other devices.


The introductory chapter of Learning XML deals with some of the basics of XML technology. It highlights some of the features as well as goals of XML along with discussing issues like how to view and test the XML documents. Transformation of a document from one form to another had also been taken care of. The book also teaches some Markup and Core Concepts where information regarding a well-formed document had been given.

The book gives an in-depth coverage of Namespaces and discusses the role of Entities as placeholders. Author had devoted sufficient space for connection of resources with Links specifying characteristics of a simple link, XPointer and its working along with an Introduction to the XML Linking Language (XLinks). Apart from this benefits of using XHTML over regular HTML had also been covered.

Keeping in view of the end product some Presentation features had also been talked about. Style sheets, its importance, its cascading aspects etc had been extensively discussed. The focus then moves on to the document models. The author explains different ways to model a document and also talks about the DTD Syntax, its designing, customization as well as modularization issues in an interesting way.

Talking about transformation issues this book says much about the repurposing of Documents. Author not only explains the need for transformation but also talks about criteria for selecting and creating nodes, generating numbers and text, and performing sorting and looping operations through node sets. Keeping in view of the increasing usage of markup languages the author stresses on the need for Internationalization so as to provide a globally acceptable level of markup.

Later part of the book deals with some programming issues for XML along with XML parsing, different XML handling techniques and the API for XML (SAX). Issues related to tree based representation of the document and the document object model marks the ending of the book. Overall ‘Learning XML’ is an excellent reference which can serve both as a guided textbook for an introductory XML course as well as prove to be a good help for advanced programmers.

 Table of Contents

Chapter 1 Introduction

  • What Is XML?
  • Origins of XML
  • Goals of XML
  • XML Today
  • Creating Documents
  • Viewing XML
  • Testing XML
  • Transformation

Chapter 2 Markup and Core Concepts

  • The Anatomy of a Document
  • Elements: The Building Blocks of XML
  • Attributes: More Muscle for Elements
  • Namespaces: Expanding Your Vocabulary
  • Entities: Placeholders for Content
  • Miscellaneous Markup
  • Well-Formed Documents
  • Getting the Most out of Markup
  • XML Application: DocBook

Chapter 3 Connecting Resources with Links

  • Introduction
  • Specifying Resources
  • XPointer: An XML Tree Climber
  • An Introduction to XLinks
  • XML Application: XHTML

Chapter 4 Presentation: Creating the End Product

  • Why Stylesheets?
  • An Overview of CSS
  • Rules
  • Properties
  • A Practical Example

Chapter 5 Document Models: A Higher Level of Control

  • Modeling Documents
  • DTD Syntax
  • Example: A Checkbook
  • Tips for Designing and Customizing DTD s
  • Example: Barebones DocBook
  • XML Schema: An Alternative to DTD s

Chapter 6 Transformation: Repurposing Documents

  • Transformation Basics
  • Selecting Nodes
  • Fine-Tuning Templates
  • Sorting
  • Example: Checkbook
  • Advanced Techniques
  • Example: Barebones DocBook

Chapter 7 Internationalization

  • Character Sets and Encodings
  • Taking Language into Account

Chapter 8 Programming for XML

  • XML Programming Overview
  • SAX: An Event-Based API
  • Tree-Based Processing
  • Conclusion

A Resources

  • A.1 Online
  • A.2 Books
  • A.3 Standards Organizations
  • A.4 Tools
  • A.5 Miscellaneous

B A Taxonomy of Standards

  • B.1 Markup and Structure
  • B.2 Linking
  • B.3 Searching
  • B.4 Style and Transformation
  • B.5 Programming
  • B.6 Publishing
  • B.7 Hypertext
  • B.8 Descriptive/Procedural
  • B.9 Multimedia
  • B.10 Science
 Overview of Chapters

Chapter 1: Introduction

  • Overview of XML.
  • What Is XML?
  • What are various features of XML?
  • Origins of XML.
  • What are the goals of XML?
  • How to create documents using the authoring tool of XML.
  • How to view the XML documents.
  • How to test the XML documents.
  • How to transform a document from one form to another.

Chapter 2: Markup and Core Concepts

  • What a document is and what it means to say it is well-formed or valid.
  • How you can separate a document into parts.
  • How attributes lets you describe details about the element more clearly.
  • The concept of Namespaces.
  • How Entities behaves as placeholders for content.
  • The XML Application.

Chapter 3: Connecting Resources with Links

  • Introduction.
  • What are the characteristics of a simple link?
  • How to specify resources.
  • What is an XPointer and how does it works?
  • An Introduction to the XML Linking Language(XLinks)
  • What are the benefits to using XHTML over regular HTML?

Chapter 4: Presentation: Creating the End Product

  • What are Stylesheets and why they are important in the XML universe?
  • An Overview of Cascading Style Sheets.
  • How to declare the Stylesheet?
  • How to combine multiple Stylesheets?
  • How rules match elements and which rules are chosen by the CSS processor.

Chapter 5: Document Models: A Higher Level of Control

  • What are the ways to model a document?
  • How DTD Syntax describe a document's structure with declarative rules.
  • How to design and customize DTDs?
  • How to modularize your DTD.
  • How XML Schema works as an Alternative to DTDs?

Chapter 6: Transformation: Repurposing Documents

  • Transformation Basics
  • Need to transform an XML document into another form.
  • How to select Nodes.
  • How to create a node, generate numbers and text, and perform sorting and looping through node sets.
  • How to Sort the elements.
  • Some Advanced Techniques like naming and parameter passing to template rules.

Chapter 7: Internationalization

  • How to provide a globally acceptable level of markup.
  • How XML handle a huge number of different languages and symbol sets.
  • Character Sets and Encodings
  • The Unicode and the Universal Character System (UCS).
  • How to declare an encoding.
  • How the document declare its language to the web server or application.

Chapter 8: Programming for XML

  • XML Programming Overview
  • XML parsing and processing outlining the pros and cons of using XML as a data storage medium.
  • What are different XML handling techniques?
  • The Simple API for XML (SAX): an Event-Based API.
  • How to build a tree based representation of the document to keep it in memory until processing is done.
  • The Document Object Model (DOM).
  • What are the basic modules of DOM.?