javax.swing.text.html.parser
Class AttributeList

java.lang.Object
  extended by javax.swing.text.html.parser.AttributeList
All Implemented Interfaces:
Serializable, DTDConstants

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.

See Also:
Serialized Form

Field Summary
 int modifier
          The modifier of this attribute.
 String name
          The name of the attribute.
 AttributeList next
          The value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element.
 int type
          The type of the attribute.
 String value
          The default value of this attribute.
 Vector<?> values
          The explicit set of the allowed values of this attribute.
 
Fields inherited from interface javax.swing.text.html.parser.DTDConstants
ANY, CDATA, CONREF, CURRENT, DEFAULT, EMPTY, ENDTAG, ENTITIES, ENTITY, FIXED, GENERAL, ID, IDREF, IDREFS, IMPLIED, MD, MODEL, MS, NAME, NAMES, NMTOKEN, NMTOKENS, NOTATION, NUMBER, NUMBERS, NUTOKEN, NUTOKENS, PARAMETER, PI, PUBLIC, RCDATA, REQUIRED, SDATA, STARTTAG, SYSTEM
 
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
 int getModifier()
          Get the modifier of this attribute.
 String getName()
          Get the name of the attribute.
 AttributeList getNext()
          Get the value of ( = pointer to ) the next attribute in the linked list, storing all attributes of some Element.
 int getType()
          Get the type of the attribute.
 String getValue()
          Get the default value of this attribute.
 Enumeration<?> getValues()
          Get the allowed values of this attribute.
static int name2type(String typeName)
          Converts a string value, representing a valid SGLM attribute type, into the corresponding value, defined in DTDConstants.
 String toString()
          Returns the attribute name.
static String type2name(int type)
          Converts a value from DTDConstants into the string representation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

next

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.


name

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


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.


modifier

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


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.

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.

Overrides:
toString in class Object
Returns:
the String representing this Object, which may be null
See Also:
Object.getClass(), Object.hashCode(), Class.getName(), Integer.toHexString(int)

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.