Expat is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).

An introductory article on using Expat is available on xml.com.

There are also two examples coming with Expat (but they provide little background):

For further reading, please consider: