org.apache.xalan.xsltc.runtime

Class Attributes

Implemented Interfaces:
AttributeList

public final class Attributes
extends java.lang.Object
implements AttributeList

Authors:
Jacek Ambroziak
Santiago Pericas-Geertsen

Constructor Summary

Attributes(DOM document, int element)

Method Summary

int
getLength()
Return the number of attributes in this list.
String
getName(int i)
Return the name of an attribute in this list (by position).
String
getType(String name)
Return the type of an attribute in the list (by name).
String
getType(int i)
Return the type of an attribute in the list (by position).
String
getValue(String name)
Return the value of an attribute in the list (by name).
String
getValue(int i)
Return the value of an attribute in the list (by position).

Constructor Details

Attributes

public Attributes(DOM document,
                  int element)

Method Details

getLength

public int getLength()
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.

Specified by:
getLength in interface AttributeList
Returns:
The number of attributes in the list.

getName

public String getName(int i)
Return the name of an attribute in this list (by position).

The names 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.

If the attribute name has a namespace prefix, the prefix will still be attached.

Specified by:
getName in interface AttributeList
Parameters:
i - The index of the attribute in the list (starting at 0).
Returns:
The name of the indexed attribute, or null if the index is out of range.

getType

public String getType(String name)
Return the type of an attribute in the list (by name).

The return value is the same as the return value for getType(int).

If the attribute name has a namespace prefix in the document, the application must include the prefix here.

Specified by:
getType in interface AttributeList
Parameters:
name - The name of the attribute.
Returns:
The attribute type as a string, or null if no such attribute exists.

getType

public String getType(int i)
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".

Specified by:
getType in interface AttributeList
Parameters:
i - 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:
AttributeList.getLength(), getType(java.lang.String)

getValue

public String getValue(String name)
Return the value of an attribute in the list (by name).

The return value is the same as the return value for getValue(int).

If the attribute name has a namespace prefix in the document, the application must include the prefix here.

Specified by:
getValue in interface AttributeList
Parameters:
Returns:
The attribute value as a string, or null if no such attribute exists.

getValue

public String getValue(int i)
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.

Specified by:
getValue in interface AttributeList
Parameters:
i - 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:
AttributeList.getLength(), getValue(java.lang.String)

Copyright B) 2004 Apache XML Project. All Rights Reserved.