XmlResourceParser


public interface XmlResourceParser
implements AttributeSet, AutoCloseable, XmlPullParser

android.content.res.XmlResourceParser


The XML parsing interface returned for an XML resource. This is a standard XmlPullParser interface but also extends AttributeSet and adds an additional close() method for the client to indicate when it is done reading the resource.

Summary

Inherited constants

int CDSECT

A CDATA sections was just read; this token is available only from calls to nextToken().

int COMMENT

An XML comment was just read.

int DOCDECL

An XML document type declaration was just read.

int END_DOCUMENT

Logical end of the xml document.

int END_TAG

Returned from getEventType(), next(), or nextToken() when an end tag was read.

int ENTITY_REF

An entity reference was just read; this token is available from nextToken() only.

String FEATURE_PROCESS_DOCDECL

This feature determines whether the document declaration is processed.

String FEATURE_PROCESS_NAMESPACES

This feature determines whether the parser processes namespaces.

String FEATURE_REPORT_NAMESPACE_ATTRIBUTES

This feature determines whether namespace attributes are exposed via the attribute access methods.

String FEATURE_VALIDATION

If this feature is activated, all validation errors as defined in the XML 1.0 specification are reported.

int IGNORABLE_WHITESPACE

Ignorable whitespace was just read.

String NO_NAMESPACE

This constant represents the default namespace (empty string "")

int PROCESSING_INSTRUCTION

An XML processing instruction declaration was just read.

int START_DOCUMENT

Signalize that parser is at the very beginning of the document and nothing was read yet.

int START_TAG

Returned from getEventType(), next(), nextToken() when a start tag was read.

int TEXT

Character data was read and will is available by calling getText().

Inherited fields

public static final String[] TYPES

This array can be used to convert the event type integer constants such as START_TAG or TEXT to to a string.

Public methods

abstract void close()

Close this parser.

abstract String getAttributeNamespace(int index)

Returns the namespace of the specified attribute.

Inherited methods

abstract boolean getAttributeBooleanValue(String namespace, String attribute, boolean defaultValue)

Return the boolean value of 'attribute'.

abstract boolean getAttributeBooleanValue(int index, boolean defaultValue)

Return the boolean value of attribute at 'index'.

abstract int getAttributeCount()

Returns the number of attributes available in the set.

abstract float getAttributeFloatValue(int index, float defaultValue)

Return the float value of attribute at 'index'.

abstract float getAttributeFloatValue(String namespace, String attribute, float defaultValue)

Return the float value of 'attribute'.

abstract int getAttributeIntValue(String namespace, String attribute, int defaultValue)

Return the integer value of 'attribute'.

abstract int getAttributeIntValue(int index, int defaultValue)

Return the integer value of attribute at 'index'.

abstract int getAttributeListValue(int index, String[] options, int defaultValue)

Return the index of the value of attribute at 'index' in the list 'options'.

abstract int getAttributeListValue(String namespace, String attribute, String[] options, int defaultValue)

Return the index of the value of 'attribute' in the list 'options'.

abstract String getAttributeName(int index)

Returns the name of the specified attribute.

abstract int getAttributeNameResource(int index)

Return the resource ID associated with the given attribute name.

default String getAttributeNamespace(int index)

Returns the namespace of the specified attribute.

abstract int getAttributeResourceValue(String namespace, String attribute, int defaultValue)

Return the value of 'attribute' as a resource identifier.

abstract int getAttributeResourceValue(int index, int defaultValue)

Return the value of attribute at 'index' as a resource identifier.

abstract int getAttributeUnsignedIntValue(String namespace, String attribute, int defaultValue)

Return the boolean value of 'attribute' that is formatted as an unsigned value.

abstract int getAttributeUnsignedIntValue(int index, int defaultValue)

Return the integer value of attribute at 'index' that is formatted as an unsigned value.

abstract String getAttributeValue(int index)

Returns the value of the specified attribute as a string representation.

abstract String getAttributeValue(String namespace, String name)

Returns the value of the specified attribute as a string representation.

abstract String getClassAttribute()

Return the value of the "class" attribute or null if there is not one.

abstract String getIdAttribute()

Return the value of the "id" attribute or null if there is not one.

abstract int getIdAttributeResourceValue(int defaultValue)

Return the integer value of the "id" attribute or defaultValue if there is none.

abstract String getPositionDescription()

Returns a description of the current position of the attribute set.

abstract int getStyleAttribute()

Return the value of the "style" attribute or 0 if there is not one.

abstract void close()

Closes this resource, relinquishing any underlying resources.

abstract void defineEntityReplacementText(String entityName, String replacementText)

Set new value for entity replacement text as defined in XML 1.0 Section 4.5 Construction of Internal Entity Replacement Text.

abstract int getAttributeCount()

Returns the number of attributes of the current start tag, or -1 if the current event type is not START_TAG

abstract String getAttributeName(int index)

Returns the local name of the specified attribute if namespaces are enabled or just attribute name if namespaces are disabled.

abstract String getAttributeNamespace(int index)

Returns the namespace URI of the attribute with the given index (starts from 0).

abstract String getAttributePrefix(int index)

Returns the prefix of the specified attribute Returns null if the element has no prefix.

abstract String getAttributeType(int index)

Returns the type of the specified attribute If parser is non-validating it MUST return CDATA.

abstract String getAttributeValue(String namespace, String name)

Returns the attributes value identified by namespace URI and namespace localName.

abstract String getAttributeValue(int index)

Returns the given attributes value.

abstract int getColumnNumber()

Returns the current column number, starting from 1.

abstract int getDepth()

Returns the current depth of the element.

abstract int getEventType()

Returns the type of the current event (START_TAG, END_TAG, TEXT, etc.)

abstract boolean getFeature(String name)

Returns the current value of the given feature.

abstract String getInputEncoding()

Returns the input encoding if known, null otherwise.

abstract int getLineNumber()

Returns the current line number, starting from 1.

abstract String getName()

For START_TAG or END_TAG events, the (local) name of the current element is returned when namespaces are enabled.

abstract String getNamespace()

Returns the namespace URI of the current element.

abstract String getNamespace(String prefix)

Returns the URI corresponding to the given prefix, depending on current state of the parser.

abstract int getNamespaceCount(int depth)

Returns the numbers of elements in the namespace stack for the given depth.

abstract String getNamespacePrefix(int pos)

Returns the namespace prefix for the given position in the namespace stack.

abstract String getNamespaceUri(int pos)

Returns the namespace URI for the given position in the namespace stack If the position is out of range, an exception is thrown.

abstract String getPositionDescription()

Returns a short text describing the current parser state, including the position, a description of the current event and the data source if known.

abstract String getPrefix()

Returns the prefix of the current element.

abstract Object getProperty(String name)

Look up the value of a property.

abstract String getText()

Returns the text content of the current event as String.

abstract char[] getTextCharacters(int[] holderForStartAndLength)

Returns the buffer that contains the text of the current event, as well as the start offset and length relevant for the current event.

abstract boolean isAttributeDefault(int index)

Returns if the specified attribute was not in input was declared in XML.

abstract boolean isEmptyElementTag()

Returns true if the current event is START_TAG and the tag is degenerated (e.g. <foobar/>).

abstract boolean isWhitespace()

Checks whether the current TEXT event contains only whitespace characters.

abstract int next()

Get next parsing event - element content will be coalesced and only one TEXT event must be returned for whole element content (comments and processing instructions will be ignored and entity references must be expanded or exception must be thrown if entity reference can not be expanded).

abstract int nextTag()

Call next() and return event if it is START_TAG or END_TAG otherwise throw an exception.

abstract String nextText()

If current event is START_TAG then if next element is TEXT then element content is returned or if next event is END_TAG then empty string is returned, otherwise exception is thrown.

abstract int nextToken()

This method works similarly to next() but will expose additional event types (COMMENT, CDSECT, DOCDECL, ENTITY_REF, PROCESSING_INSTRUCTION, or IGNORABLE_WHITESPACE) if they are available in input.

abstract void require(int type, String namespace, String name)

Test if the current event is of the given type and if the namespace and name do match.

abstract void setFeature(String name, boolean state)

Use this call to change the general behaviour of the parser, such as namespace processing or doctype declaration handling.

abstract void setInput(Reader in)

Set the input source for parser to the given reader and resets the parser.

abstract void setInput(InputStream inputStream, String inputEncoding)

Sets the input stream the parser is going to process.

abstract void setProperty(String name, Object value)

Set the value of a property.

Public methods

close

Added in API level 1
public abstract void close ()

Close this parser. Calls on the interface are no longer valid after this call.

getAttributeNamespace

Added in API level 1
public abstract String getAttributeNamespace (int index)

Returns the namespace of the specified attribute.

See also XmlPullParser.getAttributeNamespace(), which this method corresponds to when parsing a compiled XML file.

Parameters
index int: Index of the desired attribute, 0...count-1.

Returns
String A String containing the namespace of the attribute, or null if th attribute cannot be found.