org.apache.html.dom
Class HTMLElementImpl

java.lang.Object
  extended by org.apache.xerces.dom.NodeImpl
      extended by org.apache.xerces.dom.ChildNode
          extended by org.apache.xerces.dom.ParentNode
              extended by org.apache.xerces.dom.ElementImpl
                  extended by org.apache.html.dom.HTMLElementImpl
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Element, EventTarget, HTMLElement, Node, NodeList, TypeInfo
Direct Known Subclasses:
HTMLAnchorElementImpl, HTMLAppletElementImpl, HTMLAreaElementImpl, HTMLBaseElementImpl, HTMLBaseFontElementImpl, HTMLBodyElementImpl, HTMLBRElementImpl, HTMLButtonElementImpl, HTMLDirectoryElementImpl, HTMLDivElementImpl, HTMLDListElementImpl, HTMLFieldSetElementImpl, HTMLFontElementImpl, HTMLFormElementImpl, HTMLFrameElementImpl, HTMLFrameSetElementImpl, HTMLHeadElementImpl, HTMLHeadingElementImpl, HTMLHRElementImpl, HTMLHtmlElementImpl, HTMLIFrameElementImpl, HTMLImageElementImpl, HTMLInputElementImpl, HTMLIsIndexElementImpl, HTMLLabelElementImpl, HTMLLegendElementImpl, HTMLLIElementImpl, HTMLLinkElementImpl, HTMLMapElementImpl, HTMLMenuElementImpl, HTMLMetaElementImpl, HTMLModElementImpl, HTMLObjectElementImpl, HTMLOListElementImpl, HTMLOptGroupElementImpl, HTMLOptionElementImpl, HTMLParagraphElementImpl, HTMLParamElementImpl, HTMLPreElementImpl, HTMLQuoteElementImpl, HTMLScriptElementImpl, HTMLSelectElementImpl, HTMLStyleElementImpl, HTMLTableCaptionElementImpl, HTMLTableCellElementImpl, HTMLTableColElementImpl, HTMLTableElementImpl, HTMLTableRowElementImpl, HTMLTableSectionElementImpl, HTMLTextAreaElementImpl, HTMLTitleElementImpl, HTMLUListElementImpl

public class HTMLElementImpl
extends ElementImpl
implements HTMLElement

Implements an HTML-specific element, an Element that will only appear inside HTML documents. This element extends ElementImpl by adding methods for directly manipulating HTML-specific attributes. All HTML elements gain access to the id, title, lang, dir and class attributes. Other elements add their own specific attributes.

Version:
$Revision: 449313 $ $Date: 2006-09-23 18:01:43 -0400 (Sat, 23 Sep 2006) $
Author:
Assaf Arkin
See Also:
HTMLElement, Serialized Form

Field Summary
 
Fields inherited from class org.apache.xerces.dom.NodeImpl
DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_IS_CONTAINED, DOCUMENT_POSITION_PRECEDING, ELEMENT_DEFINITION_NODE, TREE_POSITION_ANCESTOR, TREE_POSITION_DESCENDANT, TREE_POSITION_DISCONNECTED, TREE_POSITION_EQUIVALENT, TREE_POSITION_FOLLOWING, TREE_POSITION_PRECEDING, TREE_POSITION_SAME_NODE
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Fields inherited from interface org.w3c.dom.TypeInfo
DERIVATION_EXTENSION, DERIVATION_LIST, DERIVATION_RESTRICTION, DERIVATION_UNION
 
Constructor Summary
HTMLElementImpl(HTMLDocumentImpl owner, java.lang.String tagName)
          Constructor required owner document and element tag name.
 
Method Summary
 java.lang.String getAttribute(java.lang.String attrName)
          Look up a single Attribute by name.
 Attr getAttributeNode(java.lang.String attrName)
          Look up a single Attribute by name.
 Attr getAttributeNodeNS(java.lang.String namespaceURI, java.lang.String localName)
          Retrieves an Attr node by local name and namespace URI.
 java.lang.String getAttributeNS(java.lang.String namespaceURI, java.lang.String localName)
          Introduced in DOM Level 2.
 java.lang.String getClassName()
          The class attribute of the element.
 java.lang.String getDir()
          Specifies the base direction of directionally neutraltext and the directionality of tables.
 NodeList getElementsByTagName(java.lang.String tagName)
          Returns a NodeList of all descendent nodes (children, grandchildren, and so on) which are Elements and which have the specified tag name.
 NodeList getElementsByTagNameNS(java.lang.String namespaceURI, java.lang.String localName)
          Introduced in DOM Level 2.
 HTMLFormElement getForm()
          Convenience method returns the form in which this form element is contained.
 java.lang.String getId()
          The element's identifier.
 java.lang.String getLang()
          Language code defined in RFC 1766.
 java.lang.String getTitle()
          The element's advisory title.
 void setClassName(java.lang.String className)
           
 void setDir(java.lang.String dir)
           
 void setId(java.lang.String id)
           
 void setLang(java.lang.String lang)
           
 void setTitle(java.lang.String title)
           
 
Methods inherited from class org.apache.xerces.dom.ElementImpl
cloneNode, getAttributes, getBaseURI, getNodeName, getNodeType, getSchemaTypeInfo, getTagName, getTypeName, getTypeNamespace, hasAttribute, hasAttributeNS, hasAttributes, isDerivedFrom, isEqualNode, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setReadOnly
 
Methods inherited from class org.apache.xerces.dom.ParentNode
getChildNodes, getFirstChild, getLastChild, getLength, getOwnerDocument, getTextContent, hasChildNodes, insertBefore, item, removeChild, replaceChild, setTextContent
 
Methods inherited from class org.apache.xerces.dom.ChildNode
getNextSibling, getParentNode, getPreviousSibling
 
Methods inherited from class org.apache.xerces.dom.NodeImpl
addEventListener, appendChild, compareDocumentPosition, compareTreePosition, dispatchEvent, getFeature, getLocalName, getNamespaceURI, getNodeValue, getPrefix, getReadOnly, getUserData, getUserData, isDefaultNamespace, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, needsSyncChildren, removeEventListener, setNodeValue, setPrefix, setUserData, setUserData, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.w3c.dom.Element
getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
 
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

Constructor Detail

HTMLElementImpl

public HTMLElementImpl(HTMLDocumentImpl owner,
                       java.lang.String tagName)
Constructor required owner document and element tag name. Will be called by the constructor of specific element types but with a known tag name. Assures that the owner document is an HTML element.

Parameters:
owner - The owner HTML document
tagName - The element's tag name
Method Detail

getId

public java.lang.String getId()
Description copied from interface: HTMLElement
The element's identifier. See the id attribute definition in HTML 4.0.

Specified by:
getId in interface HTMLElement

setId

public void setId(java.lang.String id)
Specified by:
setId in interface HTMLElement

getTitle

public java.lang.String getTitle()
Description copied from interface: HTMLElement
The element's advisory title. See the title attribute definition in HTML 4.0.

Specified by:
getTitle in interface HTMLElement

setTitle

public void setTitle(java.lang.String title)
Specified by:
setTitle in interface HTMLElement

getLang

public java.lang.String getLang()
Description copied from interface: HTMLElement
Language code defined in RFC 1766. See the lang attribute definition in HTML 4.0.

Specified by:
getLang in interface HTMLElement

setLang

public void setLang(java.lang.String lang)
Specified by:
setLang in interface HTMLElement

getDir

public java.lang.String getDir()
Description copied from interface: HTMLElement
Specifies the base direction of directionally neutraltext and the directionality of tables. See the dir attribute definition in HTML 4.0.

Specified by:
getDir in interface HTMLElement

setDir

public void setDir(java.lang.String dir)
Specified by:
setDir in interface HTMLElement

getClassName

public java.lang.String getClassName()
Description copied from interface: HTMLElement
The class attribute of the element. This attribute has been renameddue to conflicts with the "class" keyword exposed by many languages. See the class attribute definition in HTML 4.0.

Specified by:
getClassName in interface HTMLElement

setClassName

public void setClassName(java.lang.String className)
Specified by:
setClassName in interface HTMLElement

getAttributeNode

public Attr getAttributeNode(java.lang.String attrName)
Description copied from class: ElementImpl
Look up a single Attribute by name. Returns the Attribute Node, so its complete child tree is available. This could be important in XML, where the string rendering may not be sufficient information.

If no matching attribute is available, returns null.

Specified by:
getAttributeNode in interface Element
Overrides:
getAttributeNode in class ElementImpl
Parameters:
attrName - The name (nodeName) of the attribute to retrieve.
Returns:
The Attr node with the specified name ( nodeName) or null if there is no such attribute.

getAttributeNodeNS

public Attr getAttributeNodeNS(java.lang.String namespaceURI,
                               java.lang.String localName)
Description copied from class: ElementImpl
Retrieves an Attr node by local name and namespace URI.

Specified by:
getAttributeNodeNS in interface Element
Overrides:
getAttributeNodeNS in class ElementImpl
Parameters:
namespaceURI - The namespace URI of the attribute to retrieve.
localName - The local name of the attribute to retrieve.
Returns:
Attr The Attr node with the specified attribute local name and namespace URI or null if there is no such attribute.

getAttribute

public java.lang.String getAttribute(java.lang.String attrName)
Description copied from class: ElementImpl
Look up a single Attribute by name. Returns the Attribute's string value, or an empty string (NOT null!) to indicate that the name did not map to a currently defined attribute.

Note: Attributes may contain complex node trees. This method returns the "flattened" string obtained from Attribute.getValue(). If you need the structure information, see getAttributeNode().

Specified by:
getAttribute in interface Element
Overrides:
getAttribute in class ElementImpl
Parameters:
attrName - The name of the attribute to retrieve.
Returns:
The Attr value as a string, or the empty string if that attribute does not have a specified or default value.

getAttributeNS

public java.lang.String getAttributeNS(java.lang.String namespaceURI,
                                       java.lang.String localName)
Description copied from class: ElementImpl
Introduced in DOM Level 2.

Retrieves an attribute value by local name and namespace URI.

Specified by:
getAttributeNS in interface Element
Overrides:
getAttributeNS in class ElementImpl
Parameters:
namespaceURI - The namespace URI of the attribute to retrieve.
localName - The local name of the attribute to retrieve.
Returns:
String The Attr value as a string, or empty string if that attribute does not have a specified or default value.

getElementsByTagName

public final NodeList getElementsByTagName(java.lang.String tagName)
Description copied from class: ElementImpl
Returns a NodeList of all descendent nodes (children, grandchildren, and so on) which are Elements and which have the specified tag name.

Note: NodeList is a "live" view of the DOM. Its contents will change as the DOM changes, and alterations made to the NodeList will be reflected in the DOM.

Specified by:
getElementsByTagName in interface Element
Overrides:
getElementsByTagName in class ElementImpl
Parameters:
tagName - The type of element to gather. To obtain a list of all elements no matter what their names, use the wild-card tag name "*".
Returns:
A list of matching Element nodes.
See Also:
DeepNodeListImpl

getElementsByTagNameNS

public final NodeList getElementsByTagNameNS(java.lang.String namespaceURI,
                                             java.lang.String localName)
Description copied from class: ElementImpl
Introduced in DOM Level 2.

Returns a NodeList of all the Elements with a given local name and namespace URI in the order in which they would be encountered in a preorder traversal of the Document tree, starting from this node.

Specified by:
getElementsByTagNameNS in interface Element
Overrides:
getElementsByTagNameNS in class ElementImpl
Parameters:
namespaceURI - The namespace URI of the elements to match on. The special value "*" matches all namespaces. When it is null or an empty string, this method behaves like getElementsByTagName.
localName - The local name of the elements to match on. The special value "*" matches all local names.
Returns:
NodeList A new NodeList object containing all the matched Elements.

getForm

public HTMLFormElement getForm()
Convenience method returns the form in which this form element is contained. This method is exposed for form elements through the DOM API, but other elements have no access to it through the API.