Interface XmlPullParser

All Known Implementing Classes:
StaxXmlPullParser, Xpp3XmlPullParser

public interface XmlPullParser
Smack's interface for XML pull parsers. The main XML parser implementations are "Xml Pull Parser 3" (XPP3) on Android and "Streaming API for XML" (StAX, JSR 173) on Java.

Differences from StAX's XMLStreamReader are:

Differences from XPP3's XmlPullParser are:

  • Methods taking an attribute, like getAttributeName(int) index return null instead of throwing an exception if no attribute with the given index exists.

Developer Information

The following table shows the mapping of Smack's XmlPullParser events to StAX and XPP3 events:

XmlPullParser event mapping
Smack's XmlPullParser.EventStAX EventXPP3 Event
XmlPullParser.Event.START_DOCUMENTSTART_DOCUMENT (7)START_DOCUMENT (0)
XmlPullParser.Event.END_DOCUMENTEND_DOCUMENT (8)END_DOCUMENT (1)
XmlPullParser.Event.START_ELEMENTSTART_ELEMENT (1)START_TAG (2)
XmlPullParser.Event.END_ELEMENTEND_ELEMENT (2)END_TAG (3)
XmlPullParser.Event.TEXT_CHARACTERSCHARACTERS (4)TEXT (4)
XmlPullParser.Event.PROCESSING_INSTRUCTIONPROCESSING_INSTRUCTION (3)PROCESSING_INSTRUCTION (8)
XmlPullParser.Event.COMMENTCOMMENT (5)COMMENT (9)
XmlPullParser.Event.IGNORABLE_WHITESPACESPACE (6)IGNORABLE_WHITESPACE (7)
XmlPullParser.Event.ENTITY_REFERENCEENTITY_REFERENCE (9)ENTITY_REF (6)
XmlPullParser.Event.OTHERENTITY_REFERENCE (9)ENTITY_REF (6)

XmlPullParser.Event.OTHER includes in case of StAX: ATTRIBUTE (10), DTD (11), CDATA (12), NAMESPACE (13), NOTATION_DECLARATION (14) and ENTITY_DECLRATION (15), in case of XPP3: CDSECT (5), DOCDECL (10).