## org.apache.xerces.dom
Class ElementDefinitionImpl

    java.lang.Object
      |
      +--org.apache.xerces.dom.NodeImpl
            |
            +--org.apache.xerces.dom.ChildNode
                  |
                  +--org.apache.xerces.dom.ParentNode
                        |
                        +--org.apache.xerces.dom.ElementDefinitionImpl

Direct Known Subclasses:
  DeferredElementDefinitionImpl

public class ElementDefinitionImpl
extends ParentNode

NON-DOM CLASS: Describe one of the Elements (and its associated Attributes) defined in this Document Type.

I've included this in Level 1 purely as an anchor point for default attributes. In Level 2 it should enable the ChildRule support.

Version:
See Also:
  Serialized Form

Field Summary
`protected NamedNodeMapImpl` `attributes` Default attributes.
`protected java.lang.String` `name` Element definition name.

Fields inherited from class org.apache.xerces.dom.ParentNode
`fCachedChild, fCachedChildIndex, fCachedLength, firstChild, ownerDocument`

Fields inherited from class org.apache.xerces.dom.ChildNode
`nextSibling, previousSibling`

Fields inherited from class org.apache.xerces.dom.NodeImpl
`ELEMENT_DEFINITION_NODE, FIRSTCHILD, flags, HASSTRING, IGNORABLEWS, OWNED, ownerNode, READONLY, SPECIFIED, SYNCCHILDREN, SYNCDATA, UNNORMALIZED`

Constructor Summary
`ElementDefinitionImpl(CoreDocumentImpl ownerDocument, java.lang.String name)` Factory constructor.

Method Summary
`Node` `cloneNode(boolean deep)` Replicate this object.
`NamedNodeMap` `getAttributes()` Query the attributes defined on this Element.
`java.lang.String` `getNodeName()` Returns the element definition name
`short` `getNodeType()` A short integer indicating what type of node this is.

Methods inherited from class org.apache.xerces.dom.ParentNode
`getChildNodes, getChildNodesUnoptimized, getFirstChild, getLastChild, getLength, getOwnerDocument, hasChildNodes, insertBefore, item, normalize, removeChild, replaceChild, setReadOnly, synchronizeChildren`

Methods inherited from class org.apache.xerces.dom.ChildNode
`getNextSibling, getParentNode, getPreviousSibling`

Methods inherited from class org.apache.xerces.dom.NodeImpl
`addEventListener, appendChild, changed, changes, dispatchEvent, getLocalName, getNamespaceURI, getNodeValue, getPrefix, getReadOnly, getUserData, hasAttributes, isSupported, removeEventListener, setNodeValue, setPrefix, setUserData, synchronizeData, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### name

    protected java.lang.String name

  Element definition name.

### attributes

    protected NamedNodeMapImpl attributes

  Default attributes.

Constructor Detail

### ElementDefinitionImpl

    public ElementDefinitionImpl(CoreDocumentImpl ownerDocument,
                                 java.lang.String name)

  Factory constructor.

Method Detail

### getNodeType

    public short getNodeType()

  A short integer indicating what type of node this is. The named constants for this value are defined in the org.w3c.dom.Node interface.
  Overrides:
    getNodeType in class NodeImpl

### getNodeName

    public java.lang.String getNodeName()

  Returns the element definition name
  Overrides:
    getNodeName in class NodeImpl

### cloneNode

    public Node cloneNode(boolean deep)

  Replicate this object.
  Overrides:
    cloneNode in class ParentNode
  Tags copied from class: ChildNode
  See Also:
    `

    Example: Cloning a Text node will copy both the node and the text it contains.

    Example: Cloning something that has children -- Element or Attr, for example -- will _not_ clone those children unless a "deep clone" has been requested. A shallow clone of an Attr node will yield an empty Attr of the same name.

    NOTE: Clones will always be read/write, even if the node being cloned is read-only, to permit applications using only the DOM API to obtain editable copies of locked portions of the tree.

    `

### getAttributes

    public NamedNodeMap getAttributes()

  Query the attributes defined on this Element.

  In the base implementation this Map simply contains Attribute objects representing the defaults. In a more serious implementation, it would contain AttributeDefinitionImpl objects for all declared Attributes, indicating which are Default, DefaultFixed, Implicit and/or Required.

  Overrides:
    getAttributes in class NodeImpl
  Returns:
    org.w3c.dom.NamedNodeMap containing org.w3c.dom.Attribute

Copyright © 1999-2001 Apache XML Project. All Rights Reserved.