http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Release Info

Installation
Download
Build

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Attributes Class Reference

Interface for an element's attribute specifications. More...

List of all members.

Public Methods

Constructors and Destructor
 Attributes ()
 Default constructor. More...

virtual ~Attributes ()
 Destructor. More...

The virtual attribute list interface
virtual unsigned int getLength () const=0
 Return the number of attributes in this list. More...

virtual const XMLCh * getURI (const unsigned int index) const=0
 Return the namespace URI of an attribute in this list (by position). More...

virtual const XMLCh * getLocalName (const unsigned int index) const=0
 Return the local name of an attribute in this list (by position). More...

virtual const XMLCh * getQName (const unsigned int index) const=0
 Return the qName of an attribute in this list (by position). More...

virtual const XMLCh * getType (const unsigned int index) const=0
 Return the type of an attribute in the list (by position). More...

virtual const XMLCh * getValue (const unsigned int index) const=0
 Return the value of an attribute in the list (by position). More...

virtual int getIndex (const XMLCh *const uri, const XMLCh *const localPart) const=0
 Look up the index of an attribute by Namespace name. More...

virtual int getIndex (const XMLCh *const qName) const=0
 Look up the index of an attribute by XML 1.0 qualified name. More...

virtual const XMLCh * getType (const XMLCh *const uri, const XMLCh *const localPart) const=0
 Look up an attribute's type by Namespace name. More...

virtual const XMLCh * getType (const XMLCh *const qName) const=0
 Look up an attribute's type by XML 1.0 qualified name. More...

virtual const XMLCh * getValue (const XMLCh *const uri, const XMLCh *const localPart) const=0
 Look up an attribute's value by Namespace name. More...

virtual const XMLCh * getValue (const XMLCh *const qName) const=0
 Look up an attribute's value by XML 1.0 qualified name. More...


Detailed Description

Interface for an element's attribute specifications.

The SAX2 parser implements this interface and passes an instance to the SAX2 application as the last argument of each startElement event.

The instance provided will return valid results only during the scope of the startElement invocation (to save it for future use, the application must make a copy: the AttributesImpl helper class provides a convenient constructor for doing so).

An Attributes includes only attributes that have been specified or defaulted: IMPLIED attributes will not be included.

There are two ways for the SAX application to obtain information from the Attributes. First, it can iterate through the entire list:

 public void startElement (String uri, String localpart, String qName, Attributes atts) {
   for (int i = 0; i < atts.getLength(); i++) {
     String Qname = atts.getQName(i);
		String URI   = atts.getURI(i)
		String local = atts.GetLocalName(i)
     String type  = atts.getType(i);
     String value = atts.getValue(i);
     [...]
   }
 }
 

(Note that the result of getLength() will be zero if there are no attributes.)

As an alternative, the application can request the value or type of specific attributes:

 public void startElement (String uri, String localpart, String qName, Attributes atts) {
   String identifier = atts.getValue("id");
   String label = atts.getValue("label");
   [...]
 }
 

The AttributesImpl helper class provides a convenience implementation for use by parser or application writers.

See also:
Sax2DocumentHandler::startElement , AttributesImpl::AttributesImpl


Constructor & Destructor Documentation

Attributes::Attributes  
 

Default constructor.

virtual Attributes::~Attributes   [virtual]
 

Destructor.


Member Function Documentation

virtual int Attributes::getIndex const XMLCh *const    qName const [pure virtual]
 

Look up the index of an attribute by XML 1.0 qualified name.

Parameters:
qName  The qualified (prefixed) name.
Returns:
The index of the attribute, or -1 if it does not appear in the list.

virtual int Attributes::getIndex const XMLCh *const    uri,
const XMLCh *const    localPart
const [pure virtual]
 

Look up the index of an attribute by Namespace name.

Parameters:
uri  The Namespace URI, or the empty string if the name has no Namespace URI.
localPart  The attribute's local name.
Returns:
The index of the attribute, or -1 if it does not appear in the list.

virtual unsigned int Attributes::getLength   const [pure virtual]
 

Return the number of attributes in this list.

The SAX parser may provide attributes in any arbitrary order, regardless of the order in which they were declared or specified. The number of attributes may be zero.

Returns:
The number of attributes in the list.

virtual const XMLCh* Attributes::getLocalName const unsigned int    index const [pure virtual]
 

Return the local name of an attribute in this list (by position).

The QNames must be unique: the SAX parser shall not include the same attribute twice. Attributes without values (those declared IMPLIED without a value specified in the start tag) will be omitted from the list.

Parameters:
index  The index of the attribute in the list (starting at 0).
Returns:
The local name of the indexed attribute, or null if the index is out of range.
See also:
getLength

virtual const XMLCh* Attributes::getQName const unsigned int    index const [pure virtual]
 

Return the qName of an attribute in this list (by position).

The QNames must be unique: the SAX parser shall not include the same attribute twice. Attributes without values (those declared IMPLIED without a value specified in the start tag) will be omitted from the list.

Parameters:
index  The index of the attribute in the list (starting at 0).
Returns:
The qName of the indexed attribute, or null if the index is out of range.
See also:
getLength

virtual const XMLCh* Attributes::getType const XMLCh *const    qName const [pure virtual]
 

Look up an attribute's type by XML 1.0 qualified name.

See getType for a description of the possible types.

Parameters:
qName  The XML 1.0 qualified name.
Returns:
The attribute type as a string, or null if the attribute is not in the list or if qualified names are not available.

virtual const XMLCh* Attributes::getType const XMLCh *const    uri,
const XMLCh *const    localPart
const [pure virtual]
 

Look up an attribute's type by Namespace name.

See getType for a description of the possible types.

Parameters:
uri  The Namespace URI, or the empty String if the name has no Namespace URI.
localPart  The local name of the attribute.
Returns:
The attribute type as a string, or null if the attribute is not in the list or if Namespace processing is not being performed.

virtual const XMLCh* Attributes::getType const unsigned int    index const [pure virtual]
 

Return the type of an attribute in the list (by position).

The attribute type is one of the strings "CDATA", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", or "NOTATION" (always in upper case).

If the parser has not read a declaration for the attribute, or if the parser does not report attribute types, then it must return the value "CDATA" as stated in the XML 1.0 Recommentation (clause 3.3.3, "Attribute-Value Normalization").

For an enumerated attribute that is not a notation, the parser will report the type as "NMTOKEN".

Parameters:
index  The index of the attribute in the list (starting at 0).
Returns:
The attribute type as a string, or null if the index is out of range.
See also:
getLength , getType(String)

virtual const XMLCh* Attributes::getURI const unsigned int    index const [pure virtual]
 

Return the namespace URI of an attribute in this list (by position).

The QNames must be unique: the SAX parser shall not include the same attribute twice. Attributes without values (those declared IMPLIED without a value specified in the start tag) will be omitted from the list.

Parameters:
index  The index of the attribute in the list (starting at 0).
Returns:
The URI of the indexed attribute, or null if the index is out of range.
See also:
getLength

virtual const XMLCh* Attributes::getValue const XMLCh *const    qName const [pure virtual]
 

Look up an attribute's value by XML 1.0 qualified name.

See getValue for a description of the possible values.

Parameters:
qName  The XML 1.0 qualified name.
Returns:
The attribute value as a string, or null if the attribute is not in the list or if qualified names are not available.

virtual const XMLCh* Attributes::getValue const XMLCh *const    uri,
const XMLCh *const    localPart
const [pure virtual]
 

Look up an attribute's value by Namespace name.

See getValue for a description of the possible values.

Parameters:
uri  The Namespace URI, or the empty String if the name has no Namespace URI.
localPart  The local name of the attribute.
Returns:
The attribute value as a string, or null if the attribute is not in the list.

virtual const XMLCh* Attributes::getValue const unsigned int    index const [pure virtual]
 

Return the value of an attribute in the list (by position).

If the attribute value is a list of tokens (IDREFS, ENTITIES, or NMTOKENS), the tokens will be concatenated into a single string separated by whitespace.

Parameters:
index  The index of the attribute in the list (starting at 0).
Returns:
The attribute value as a string, or null if the index is out of range.
See also:
getLength , getValue(XMLCh*)


The documentation for this class was generated from the following file:


Copyright © 2004 The Apache Software Foundation. All Rights Reserved.