O'Reilly logo

Professional XML by Michael Kay, Kent Sharkey, Sam Ferguson, Alessandro Vernet, Bill Evjen, Thiru Thangarathinam

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 13. Simple API for XML (SAX)

The Simple API for XML (SAX) is an event-driven programming interface for XML parsing. It was developed by the members of the xml-dev mailing list currently hosted by the Organization for the Advancement of Structured Information Standards (OASIS) (oasis-open.org). SAX is not an XML parser, but instead it is a set of interfaces implemented by many XML parsers. SAX was developed as a standardized way to parse an XML, to enable more efficient analysis of large XML documents. SAX is specified as a set of Java interfaces. Initially, if you were going to do any serious work with it, you had to be doing some Java programming, using JDK 1.1 or later. Now, however, a wide variety of languages have their own version of SAX.

In this chapter, you get an in-depth look at the features of SAX including its architecture, and processing flow through examples. Specifically you learn how to,

  • Configure a SAX parser and parse an XML document

  • Handle elements, attribute lists, character data, and processing instructions

  • Handle errors and warnings using SAX

  • Search for specific elements in an XML document using SAX

  • Write XML elements using SAX

  • Validate an XML document with an XSD schema

  • Understand the advantages and disadvantages of SAX

Introducing XML Parsing

There are two widely used approaches to parsing XML data:

  • Tree-based APIs

  • Simple API for XML (SAX)

The following sections discuss each of these approaches.

Tree-Based APIs

One of the most popular XML APIs at the moment is the ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required