SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(EXAMPLE, , example.dtd)
SAX.entityDecl(xml, 1, (null), (null), Extensible Markup Language)
SAX.getEntity(xml)
SAX.entityDecl(title, 2, -//MY-TITLE//FR, title.xml, (null))
SAX.unparsedEntityDecl(image, (null), img.gif, GIF)
SAX.externalSubset(EXAMPLE, , example.dtd)
SAX.startElementNs(EXAMPLE, NULL, NULL, 0, 0, 0)
SAX.characters(
  , 3)
SAX.getEntity(title)
SAX.reference(title)
SAX.characters(
  This text is about XML, the, 31)
SAX.getEntity(xml)
SAX.characters(Extensible Markup Language, 26)
SAX.reference(xml)
SAX.characters( and this is an embedded , 25)
SAX.startElementNs(IMG, NULL, NULL, 0, 1, 0, src='imag...', 5)
SAX.endElementNs(IMG, NULL, NULL)
SAX.characters(
, 1)
SAX.endElementNs(EXAMPLE, NULL, NULL)
SAX.endDocument()
