SAX is a serial access parser API for XML and its name is acronymically derived from "Simple API for XML". A SAX Parser handles XML information as a stream and is unidirectional, i.e. it cannot renegotiate a node without first having to establish a new handle to the document and reparse. With that proviso in mind, however, the SAX parser, since it works in stream mode, is unquestionably faster than its sibling the DOM parser.

The SAX parser is implemented as an event-driven model in which the programmer provides callback methods which are invoked by the parser as part of its traversal of the XML document.

SAX was developed collaboratively on the xml-dev mailing list, with no formal committee structure, but was quickly implemented by major companies working with XML. The original lead developer and maintainer was David Megginson. SAX is now maintained by David Brownell.

See also: XML, DOM (XML API)