javax.swing.text.html.parser

Class AttributeList

public final class AttributeList extends Object implements DTDConstants, Serializable

Stores the attribute information, obtained by parsing SGML (DTD) tag <!ATTLIST .. >

Elements can have a associated named properties (attributes) having the assigned values. The element start tag can have any number of attribute value pairs, separated by spaces. They can appear in any order. SGML requires you to delimit the attribute values using either double (") or single (') quotation marks. In HTML, it is possible (but not recommended) to specify the value of an attribute without quotation marks. Such attribute value may only contain letters, digits, hyphens (-) and periods (.) .

The AttributeList defines a single attribute that additionally has a pointer referencing the possible subsequent attribute. The whole structure is just a simple linked list, storing all attributes of some Element. Use the getNext() method repeatedly to see all attributes in the list.

Field Summary
intmodifier
The modifier of this attribute.
Stringname
The name of the attribute.
AttributeListnext
The value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element.
inttype
The type of the attribute.
Stringvalue
The default value of this attribute.
Vector<?>values
The explicit set of the allowed values of this attribute.
Constructor Summary
AttributeList(String a_name)
Creates the attribute with the given name, initializing other fields to the default values ( 0 and null ).
AttributeList(String a_name, int a_type, int a_modifier, String a_default, Vector<?> allowed_values, AttributeList a_next)
Creates the attribute with the given properties.
Method Summary
intgetModifier()
Get the modifier of this attribute.
StringgetName()
Get the name of the attribute.
AttributeListgetNext()
Get the value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element.
intgetType()
Get the type of the attribute.
StringgetValue()
Get the default value of this attribute.
Enumeration<?>getValues()
Get the allowed values of this attribute.
static intname2type(String typeName)
Converts a string value, representing a valid SGLM attribute type, into the corresponding value, defined in DTDConstants.
StringtoString()
Returns the attribute name.
static Stringtype2name(int type)
Converts a value from DTDConstants into the string representation.

Field Detail

modifier

public int modifier
The modifier of this attribute. This field contains one of the following DTD constants:

name

public String name
The name of the attribute. The attribute names are case insensitive.

public AttributeList next
The value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element. Contains null for the last attribute.

type

public int type
The type of the attribute. The possible values of this field (NUMBER, NAME, ID, CDATA and so on) are defined in DTDConstants.

value

public String value
The default value of this attribute. Equals to null if no default value is specified.

values

public Vector<?> values
The explicit set of the allowed values of this attribute. Equals to null, if this parameter was not specified. Values, defined in DTD, are case insensitive.

Constructor Detail

AttributeList

public AttributeList(String a_name)
Creates the attribute with the given name, initializing other fields to the default values ( 0 and null ).

Parameters: a_name The name of the attribute.

AttributeList

public AttributeList(String a_name, int a_type, int a_modifier, String a_default, Vector<?> allowed_values, AttributeList a_next)
Creates the attribute with the given properties.

Parameters: a_name The name of the attribute a_type The type of the attribute. The possible values are defined in DTDConstants. a_modifier The modifier of this attribute. The possible values are defined in DTDConstants. a_default The default value of this attribute allowed_values The explicit set of the allowed values of this attribute a_next The value of the subsequent instance of the AttributeList, representing the next attribute definition for the same element. Equals to null for the last attribute definition.

Method Detail

getModifier

public int getModifier()
Get the modifier of this attribute. This field contains one of the following DTD constants:

getName

public String getName()
Get the name of the attribute. The value is returned as it was supplied to a constructor, preserving the character case.

getNext

public AttributeList getNext()
Get the value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element. Contains null for the last attribute.

getType

public int getType()
Get the type of the attribute. The possible values of this field (NUMBER, NAME, ID, CDATA and so on) are defined in DTDConstants.

getValue

public String getValue()
Get the default value of this attribute.

getValues

public Enumeration<?> getValues()
Get the allowed values of this attribute.

name2type

public static int name2type(String typeName)
Converts a string value, representing a valid SGLM attribute type, into the corresponding value, defined in DTDConstants.

Parameters: typeName the name of the type (character case is ignored).

Returns: a value from DTDConstants or DTDConstants.ANY if the string is not representing a known type. The known attribute types in this implementation are CDATA, ENTITY, ENTITIES, ID, IDREF, IDREFS, NAME, NAMES, NMTOKEN, NMTOKENS, NOTATION, NUMBER, NUMBERS, NUTOKEN and NUTOKENS.

Throws: NullPointerException if the passed parameter is null.

toString

public String toString()
Returns the attribute name.

type2name

public static String type2name(int type)
Converts a value from DTDConstants into the string representation.

Parameters: type - an integer value of the public static integer field, defined in the DTDConstants class.

Returns: a corresponding SGML DTD keyword (UPPERCASE) or null if there are no attribute type constant having the given value.