org.ccil.cowan.tagsoup
Class Element

java.lang.Object
  extended by org.ccil.cowan.tagsoup.Element

public class Element
extends java.lang.Object

The internal representation of an actual element (not an element type). An Element has an element type, attributes, and a successor Element for use in constructing stacks and queues of Elements.

See Also:
ElementType, AttributesImpl

Constructor Summary
Element(ElementType type, boolean defaultAttributes)
          Return an Element from a specified ElementType.
 
Method Summary
 void anonymize()
          Make this element anonymous.
 AttributesImpl atts()
          Return the attributes as an AttributesImpl object.
 boolean canContain(Element other)
          Return true if the type of this element can contain the type of another element.
 void clean()
          Clean the attributes of this element.
 int flags()
          Return the flags vector of the element's type.
 boolean isPreclosed()
          Return true if this element has been preclosed.
 java.lang.String localName()
          Return the local name of the element's type.
 int memberOf()
          Return the member-of vector of the element's type.
 int model()
          Return the content model vector of the element's type.
 java.lang.String name()
          Return the name of the element's type.
 java.lang.String namespace()
          Return the namespace name of the element's type.
 Element next()
          Return the next element in an element stack or queue.
 ElementType parent()
          Return the parent element type of the element's type.
 void preclose()
          Force this element to preclosed status, meaning that an end-tag has been seen but the element cannot yet be closed for structural reasons.
 void setAttribute(java.lang.String name, java.lang.String type, java.lang.String value)
          Set an attribute and its value into this element.
 void setNext(Element next)
          Change the next element in an element stack or queue.
 ElementType type()
          Return the element type.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Element

public Element(ElementType type,
               boolean defaultAttributes)
Return an Element from a specified ElementType.

Parameters:
type - The element type of the newly constructed element
defaultAttributes - True if default attributes are wanted
Method Detail

type

public ElementType type()
Return the element type.

Returns:
The element type.

atts

public AttributesImpl atts()
Return the attributes as an AttributesImpl object. Returning an AttributesImpl makes the attributes mutable.

Returns:
The attributes
See Also:
AttributesImpl

next

public Element next()
Return the next element in an element stack or queue.

Returns:
The next element

setNext

public void setNext(Element next)
Change the next element in an element stack or queue.

Parameters:
next - The new next element

name

public java.lang.String name()
Return the name of the element's type. Convenience method.

Returns:
The element type name

namespace

public java.lang.String namespace()
Return the namespace name of the element's type. Convenience method.

Returns:
The element type namespace name

localName

public java.lang.String localName()
Return the local name of the element's type. Convenience method.

Returns:
The element type local name

model

public int model()
Return the content model vector of the element's type. Convenience method.

Returns:
The content model vector

memberOf

public int memberOf()
Return the member-of vector of the element's type. Convenience method.

Returns:
The member-of vector

flags

public int flags()
Return the flags vector of the element's type. Convenience method.

Returns:
The flags vector

parent

public ElementType parent()
Return the parent element type of the element's type. Convenience method.

Returns:
The parent element type

canContain

public boolean canContain(Element other)
Return true if the type of this element can contain the type of another element. Convenience method.

Parameters:
other - The other element

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.String type,
                         java.lang.String value)
Set an attribute and its value into this element.

Parameters:
name - The attribute name (Qname)
type - The attribute type
value - The attribute value

anonymize

public void anonymize()
Make this element anonymous. Remove any id or name attribute present in the element's attributes.


clean

public void clean()
Clean the attributes of this element. Attributes with null name (the name was ill-formed) or null value (the attribute was present in the element type but not in this actual element) are removed. Type BOOLEAN is changed to type NMTOKEN at this time.


preclose

public void preclose()
Force this element to preclosed status, meaning that an end-tag has been seen but the element cannot yet be closed for structural reasons.


isPreclosed

public boolean isPreclosed()
Return true if this element has been preclosed.



Licence: Academic Free License 3.0 and/or GPL 2.0