javax.swing.text.html.parser
Class Element

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

public final class Element
extends Object
implements DTDConstants, Serializable

Stores the element information, obtained by parsing SGML DTD tag <!ELEMENT .. >. This class has no public constructor and can only be instantiated using the DTD methods

SGML defines elements that represent structures or behavior. An element typically consists of a start tag, content, and an end tag. Hence the elements are not tags. The HTML 4.0 definition specifies that some elements are not required to have the end tags. Also, some HTML elements (like <hr>) have no content. Element names are case sensitive.

See Also:
Serialized Form

Field Summary
 AttributeList atts
          The element attributes.
 ContentModel content
          The content model, defining elements, entities and DTD text that may/may not occur inside this element.
 Object data
          A field to store additional user data for this Element.
 BitSet exclusions
          Contains refernces to elements that must NOT occur inside this element, at any level of hierarchy.
 BitSet inclusions
          Contains refernces to elements that must CAN occur inside this element, at any level of hierarchy.
 int index
          This field contains the unique integer identifier of this Element, used to refer the element (more exactly, the element flag) in inclusions and exclusions bit set.
 String name
          The element name.
 boolean oEnd
          True is this element need not to have the closing tag, false otherwise.
 boolean oStart
          True is this element need not to have the starting tag, false otherwise.
 int type
          The element type, containing value, defined in DTDConstants.
 
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
 
Method Summary
 AttributeList getAttribute(String attribute)
          Get the element attribute by name.
 AttributeList getAttributeByValue(String a_value)
          Get the element attribute by its value.
 AttributeList getAttributes()
          Get all attributes of this document as an attribute list.
 ContentModel getContent()
          Get the content model, defining elements, entities and DTD text that may/may not occur inside this element.
 int getIndex()
          Get the unique integer identifier of this Element, used to refer the element (more exactly, the element flag) in inclusions and exclusions bit set.
 String getName()
          Get the element name.
 int getType()
          Get the element type.
 boolean isEmpty()
          Returns true for the element with no content.
static int name2type(String a_type)
          Converts the string representation of the element type into its unique integer identifier, defined in DTDConstants.
 boolean omitEnd()
          True is this element need not to have the starting tag, false otherwise.s element need not to have the closing tag, false otherwise.
 boolean omitStart()
          True is this element need not to have the closing tag, false otherwise.
 String toString()
          Returns the name of this element.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

atts

public AttributeList atts
The element attributes.


exclusions

public BitSet exclusions
Contains refernces to elements that must NOT occur inside this element, at any level of hierarchy.


inclusions

public BitSet inclusions
Contains refernces to elements that must CAN occur inside this element, at any level of hierarchy.


content

public ContentModel content
The content model, defining elements, entities and DTD text that may/may not occur inside this element.


data

public Object data
A field to store additional user data for this Element.


name

public String name
The element name.


oEnd

public boolean oEnd
True is this element need not to have the closing tag, false otherwise. The HTML 4.0 definition specifies that some elements (like <hr>are not required to have the end tags.


oStart

public boolean oStart
True is this element need not to have the starting tag, false otherwise. The HTML 4.0 definition specifies that some elements (like <head> or <body>) are not required to have the start tags.


index

public int index
This field contains the unique integer identifier of this Element, used to refer the element (more exactly, the element flag) in inclusions and exclusions bit set.


type

public int type
The element type, containing value, defined in DTDConstants. In this implementation, the element type can be CDATA, RCDATA, EMPTY or ANY.

Method Detail

name2type

public static int name2type(String a_type)
Converts the string representation of the element type into its unique integer identifier, defined in DTDConstants.

Parameters:
a_type - A name of the type
Returns:
DTDConstants.CDATA, DTDConstants.RCDATA, DTDConstants.EMPTY, DTDConstants.ANY or null if the type name is not "CDATA", "RCDATA", "EMPTY" or "ANY". This function is case sensitive.
Throws:
NullPointerException - if a_type is null.

getAttribute

public AttributeList getAttribute(String attribute)
Get the element attribute by name.

Parameters:
attribute - the attribute name, case insensitive.
Returns:
the correspoding attribute of this element. The class, for storing as attribute list, as a single attribute, is used to store a single attribute in this case.
Throws:
NullPointerException - if the attribute name is null.

getAttributeByValue

public AttributeList getAttributeByValue(String a_value)
Get the element attribute by its value.

Parameters:
a_value - the attribute value, case insensitive.
Returns:
the correspoding attribute of this element. The class, for storing as attribute list, as a single attribute, is used to store a single attribute in this case. If there are several attributes with the same value, there is no garranty, which one is returned.

getAttributes

public AttributeList getAttributes()
Get all attributes of this document as an attribute list.

Returns:
The attribute list.

getContent

public ContentModel getContent()
Get the content model, defining elements, entities and DTD text that may/may not occur inside this element.


isEmpty

public boolean isEmpty()
Returns true for the element with no content. Empty elements are defined with the SGML DTD keyword "EMPTY".

Returns:
true if content model field (content) method is equal to null or its method empty() returns true.

getIndex

public int getIndex()
Get the unique integer identifier of this Element, used to refer the element (more exactly, the element flag) in inclusions and exclusions bit set. WARNING: This value may not be the same between different implementations.


getName

public String getName()
Get the element name.


getType

public int getType()
Get the element type.

Returns:
one of the values, defined DTDConstants. In this implementation, the element type can be CDATA, RCDATA, EMPTY or ANY.

omitEnd

public boolean omitEnd()
True is this element need not to have the starting tag, false otherwise.s element need not to have the closing tag, false otherwise. The HTML 4.0 definition specifies that some elements (like <hr>are not required to have the end tags.


omitStart

public boolean omitStart()
True is this element need not to have the closing tag, false otherwise. The HTML 4.0 definition specifies that some elements (like <head> or <body>) are not required to have the start tags.


toString

public String toString()
Returns the name of this element.

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)