SAX2: Processing Xml Efficiently With Java by David BrownellSAX2: Processing Xml Efficiently With Java by David Brownell

SAX2: Processing Xml Efficiently With Java

byDavid Brownell

Paperback | January 13, 2002

Pricing and Purchase Info

$34.66 online 
$38.95 list price save 11%
Earn 173 plum® points

Prices and offers may vary in store


In stock online

Ships free on orders over $25

Not available in stores


This concise book gives you the information you need to effectively use the Simple API for XML (SAX2), the dominant API for efficient XML processing with Java. With the SAX2 API, developers have access to the information in XML documents as they are read, without imposing major memory constraints or a large code footprint. SAX2 is often used by other APIs "under the covers", and provides a foundation for processing and creating both XML and non-XML information.While generally considered the most efficient approach to handling XML document parsing, SAX2 also carries a significant learning curve. In SAX2, author David Brownell explores the many details of managing XML parsers, filtering the information those parsers return, generatingyour own SAX2 events to convert non-XML information to an XML form, and developing strategies for using event-based parsing in a variety of application scenarios.Created in a public process by the XML-Dev mailing list, the SAX2 API is compact and highly functional. SAX2 uses callbacks to report the information in an XML document as the document is read, allowing you to create your ownprogram structures around the content of documents. No intermediary model of an entire XML document is necessary, and the mapping from XML structures to Java structures and back is straightforward.Both developers learning about SAX2 for the first time and developers returning for reference and advanced material about SAX2 will find useful information in this book. Chapters provide detailed explanations and examples of many different aspects of SAX2 development, while appendices provide a reference to the API and an explanation of the relationships between the SAX2 API and the XML Information Set.While the core of the API is quite approachable, many of its more advanced features are both obscure and powerful. You can use SAX2 to filter, modify, and restructureinformation in layers of processing which make it easy to reuse generic tools. SAX2 also has some significant limitations that applications need to address in theirown ways. This new book gives you the detail and examples required to use SAX2 to its full potential, taking advantage of its power while avoiding its limitations.

David Brownell is a software engineer. He's been involved with SAX since shortly after the XML 1.0 specification went final, and is currently involved in maintaining the SAX APIs and the GNUJAXP implementation. When he worked at Sun, he started the Java XML engineering effort, including SAX support, as a natural follow-on to the servle...
Title:SAX2: Processing Xml Efficiently With JavaFormat:PaperbackDimensions:240 pages, 9 × 6 × 0.59 inPublished:January 13, 2002Publisher:O'Reilly MediaLanguage:English

The following ISBNs are associated with this title:

ISBN - 10:0596002378

ISBN - 13:9780596002374


Table of Contents

Preface; Who Should Read This Book?; Organization of This Book; Conventions Used in This Book; How to Contact Us; Acknowledgments;Chapter 1: The Simple API for XML; 1.1 Types of XML APIs; 1.2 Why Choose SAX?; 1.3 Why Not to Choose SAX?; 1.4 A Short History of SAX; 1.5 Packages in the SAX2 API; 1.6 Some Popular SAX2 Parser Distributions; 1.7 Installing a SAX2 Parser; 1.8 What XML Are We Talking About?;Chapter 2: Introducing SAX2; 2.1 Producers and Consumers; 2.2 Beginning SAX; 2.3 Basic ContentHandler Events; 2.4 Producer-Side Validation; 2.5 Exception Handling; 2.6 Namespaces and SAX2;Chapter 3: Producing SAX2 Events; 3.1 Pull Mode Event Production with XMLReader; 3.2 Bootstrapping an XMLReader; 3.3 Configuring XMLReader Behavior; 3.4 The EntityResolver Interface; 3.5 Other Kinds of SAX2 Event Producers;Chapter 4: Consuming SAX2 Events; 4.1 More About ContentHandler; 4.2 The LexicalHandler Interface; 4.3 Exposing DTD Information; 4.4 Turning SAX Events into Data Structures; 4.5 XML Pipelines;Chapter 5: Other SAX Classes; 5.1 Helper Classes; 5.2 SAX1 Support;Chapter 6: Putting It All Together; 6.1 Rich Site Summary: RSS; 6.2 XML and Messaging; 6.3 Including Subdocuments;SAX2 API Summary; The org.xml.sax Package; The org.xml.sax.helpers Package; The org.xml.sax.ext Package;SAX2 and the XML Infoset; Event Producer Issues; Event Consumer Issues; Document Information Item; Element Information Items; Attribute Information Items; Processing Instruction Information Items; Unexpanded Entity Reference Information Items; Character Information Items; Comment Information Items; Document Type Declaration Information Item; Unparsed Entity Information Items; Notation Information Items; Namespace Information Items;Colophon;