Class AbstractElement
- java.lang.Object
 - 
- org.dom4j.tree.AbstractNode
 - 
- org.dom4j.tree.AbstractBranch
 - 
- org.dom4j.tree.AbstractElement
 
 
 
 
- 
- All Implemented Interfaces:
 Serializable,Cloneable,Branch,Element,Node
- Direct Known Subclasses:
 BaseElement,DefaultElement
public abstract class AbstractElement extends AbstractBranch implements Element
AbstractElementis an abstract base class for tree implementors to use for implementation inheritence.- See Also:
 - Serialized Form
 
 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected static booleanUSE_STRINGVALUE_SEPARATORprotected static booleanVERBOSE_TOSTRING- 
Fields inherited from class org.dom4j.tree.AbstractBranch
DEFAULT_CONTENT_LIST_SIZE 
- 
Fields inherited from class org.dom4j.tree.AbstractNode
NODE_TYPE_NAMES 
- 
Fields inherited from interface org.dom4j.Node
ANY_NODE, ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, MAX_NODE_TYPE, NAMESPACE_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, UNKNOWN_NODE 
 - 
 
- 
Constructor Summary
Constructors Constructor Description AbstractElement() 
- 
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaccept(Visitor visitor)acceptmethod is theVisitor Patternmethod.voidadd(Attribute attribute)Adds the givenAttributeto this element.voidadd(CDATA cdata)Adds the givenCDATAto this element.voidadd(Comment comment)Adds the givenCommentto this branch.voidadd(Element element)Adds the givenElementto this branch.voidadd(Entity entity)Adds the givenEntityto this element.voidadd(Namespace namespace)Adds the givenNamespaceto this element.voidadd(Node node)Adds the givenNodeor throwsIllegalAddExceptionif the given node is not of a valid type.voidadd(ProcessingInstruction pi)Adds the givenProcessingInstructionto this branch.voidadd(Text text)Adds the givenTextto this element.ElementaddAttribute(String name, String value)Adds the attribute value of the given local name.ElementaddAttribute(QName qName, String value)Adds the attribute value of the given fully qualified name.ElementaddCDATA(String cdata)Adds a newCDATAnode with the given text to this element.ElementaddComment(String comment)Adds a newCommentnode with the given text to this element.ElementaddElement(String name)Adds a newElementnode with the given name to this branch and returns a reference to the new node.ElementaddEntity(String name, String text)Adds a newEntitynode with the given name and text to this element and returns a reference to the new node.List<Namespace>additionalNamespaces()Returns any additional namespaces declarations for this element other than namespace returned via theElement.getNamespace()method.List<Namespace>additionalNamespaces(String defaultNamespaceURI)ElementaddNamespace(String prefix, String uri)Adds a namespace to this element for use by its child contentprotected voidaddNewNode(int index, Node node)protected voidaddNewNode(Node node)Like addNode() but does not require a parent checkprotected voidaddNode(int index, Node node)protected voidaddNode(Node node)ElementaddProcessingInstruction(String target, String data)Adds a processing instruction for the given targetElementaddProcessingInstruction(String target, Map<String,String> data)Adds a processing instruction for the given targetElementaddText(String text)Adds a newTextnode with the given text to this element.voidappendAttributes(Element element)Appends the attributes of the given element to me.StringasXML()asXMLreturns the textual XML representation of this node.Attributeattribute(int index)Returns the attribute at the specified indexGets theAttributeattribute(String name)Returns the attribute with the given nameAttributeattribute(String name, Namespace namespace)Attributeattribute(QName qName)DOCUMENT ME!intattributeCount()DOCUMENT ME!Iterator<Attribute>attributeIterator()DOCUMENT ME!protected abstract List<Attribute>attributeList()DOCUMENT ME!protected abstract List<Attribute>attributeList(int attributeCount)DOCUMENT ME!List<Attribute>attributes()StringattributeValue(String name)This returns the attribute value for the attribute with the given name and any namespace or null if there is no such attribute or the empty string if the attribute value is empty.StringattributeValue(String name, String defaultValue)This returns the attribute value for the attribute with the given name and any namespace or the default value if there is no such attribute value.StringattributeValue(QName qName)This returns the attribute value for the attribute with the given fully qualified name or null if there is no such attribute or the empty string if the attribute value is empty.StringattributeValue(QName qName, String defaultValue)This returns the attribute value for the attribute with the given fully qualified name or the default value if there is no such attribute value.protected voidchildAdded(Node node)Called when a new child node is added to create any parent relationshipsprotected voidchildRemoved(Node node)Called when a child node has been removed to allow any parent relationships to be deleted or events to be fired.protected List<Attribute>createAttributeList()A Factory Method pattern which creates a List implementation used to store attributesprotected List<Attribute>createAttributeList(int size)A Factory Method pattern which creates a List implementation used to store attributesElementcreateCopy()This returns a deep clone of this element.ElementcreateCopy(String name)Creates a deep copy of this element with the given local name The new element is detached from its parent, and getParent() on the clone will return null.ElementcreateCopy(QName qName)Creates a deep copy of this element with the given fully qualified name.protected ElementcreateElement(String name)protected ElementcreateElement(QName qName)protected <T> Iterator<T>createSingleIterator(T result)List<Namespace>declaredNamespaces()Returns all the namespaces declared by this element.Elementelement(String name)Returns the first element for the given local name and any namespace.Elementelement(String name, Namespace namespace)Elementelement(QName qName)Returns the first element for the given fully qualified name.Iterator<Element>elementIterator()Returns an iterator over all this elements child elements.Iterator<Element>elementIterator(String name)Returns an iterator over the elements contained in this element which match the given local name and any namespace.Iterator<Element>elementIterator(String name, Namespace ns)Iterator<Element>elementIterator(QName qName)Returns an iterator over the elements contained in this element which match the given fully qualified name.List<Element>elements()Returns the elements contained in this element.List<Element>elements(String name)Returns the elements contained in this element with the given local name and any namespace.List<Element>elements(String name, Namespace namespace)List<Element>elements(QName qName)Returns the elements contained in this element with the given fully qualified name.StringelementText(String name)StringelementText(QName qName)StringelementTextTrim(String name)StringelementTextTrim(QName qName)voidensureAttributesCapacity(int minCapacity)Ensures that the list of attributes has the given sizeObjectgetData()Accesses the data of this element which may implement data typing bindings such as XML Schema or Java Bean bindings or will return the same value asElement.getText()protected DocumentFactorygetDocumentFactory()StringgetName()getNamereturns the name of this node.NamespacegetNamespace()Returns theNamespaceof this element if one exists otherwiseNamespace.NO_NAMESPACEis returned.NamespacegetNamespaceForPrefix(String prefix)Returns theNamespacewhich is mapped to the given prefix or null if it could not be found.NamespacegetNamespaceForURI(String uri)Returns theNamespacewhich is mapped to the given URI or null if it could not be found.StringgetNamespacePrefix()Returns the namespace prefix of this element if one exists otherwise an emptyStringis returned.List<Namespace>getNamespacesForURI(String uri)Returns the all namespaces which are mapped to the given URI or an empty list if no such namespaces could be found.StringgetNamespaceURI()Returns the URI mapped to the namespace of this element if one exists otherwise an emptyStringis returned.shortgetNodeType()Returns the code according to the type of node.StringgetPath(Element context)Returns the relative XPath expression which will return a node set containing the given node such as a/b/@c.QNamegetQName(String qualifiedName)Returns theQNamefor the given qualified name, using the namespace URI in scope for the given prefix of the qualified name or the default namespace if the qualified name has no prefix.StringgetQualifiedName()Returns the fully qualified name of this element.StringgetStringValue()Returns the XPath string-value of this node.StringgetUniquePath(Element context)Returns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node.StringgetXPathNameStep()Returns the XPath expression to match this Elements name which is getQualifiedName() if there is a namespace prefix defined or if no namespace is present then it is getName() or if a namespace is defined with no prefix then the expression is [name()='X'] where X = getName().NodegetXPathResult(int index)Returns a node at the given index suitable for an XPath result set.booleanhasMixedContent()Returns true if thisElementhas mixed content.intindexOf(Node node)Returns the index of the given node if it is a child node of this branch or -1 if the given node is not a child node.booleanisRootElement()DOCUMENT ME!booleanisTextOnly()Returns true if thisElementhas text only content.Nodenode(int index)Returns theNodeat the specified index position.intnodeCount()Returns the number ofNodeinstances that this branch contains.Iterator<Node>nodeIterator()Returns an iterator through the content nodes of this branchvoidnormalize()Puts allTextnodes in the full depth of the sub-tree underneath thisNode, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separatesTextnodes, i.e., there are neither adjacentTextnodes nor emptyTextnodes.ProcessingInstructionprocessingInstruction(String target)DOCUMENT ME!List<ProcessingInstruction>processingInstructions()Returns a list of all the processing instructions in this branch.List<ProcessingInstruction>processingInstructions(String target)Returns a list of the processing instructions for the given target.booleanremove(Attribute attribute)Removes the givenAttributefrom this element.booleanremove(CDATA cdata)Removes the givenCDATAif the node is an immediate child of this element.booleanremove(Comment comment)Removes the givenCommentif the node is an immediate child of this branch.booleanremove(Element element)Removes the givenElementif the node is an immediate child of this branch.booleanremove(Entity entity)Removes the givenEntityif the node is an immediate child of this element.booleanremove(Namespace namespace)Removes the givenNamespaceif the node is an immediate child of this element.booleanremove(Node node)Removes the givenNodeif the node is an immediate child of this branch.booleanremove(ProcessingInstruction pi)Removes the givenProcessingInstructionif the node is an immediate child of this branch.booleanremove(Text text)Removes the givenTextif the node is an immediate child of this element.protected booleanremoveNode(Node node)booleanremoveProcessingInstruction(String target)Removes the processing instruction for the given target if it existsvoidsetAttributes(Attributes attributes, NamespaceStack namespaceStack, boolean noNamespaceAttributes)This method provides a more optimal way of setting all the attributes on an Element particularly for use inSAXReader.voidsetAttributeValue(String name, String value)Deprecated.As of version 0.5.voidsetAttributeValue(QName qName, String value)Deprecated.As of version 0.5.voidsetData(Object data)Sets the data value of this element if this element supports data binding or callsNode.setText(java.lang.String)if it doesn'tvoidsetName(String name)Sets the text data of this node or this method will throw anUnsupportedOperationExceptionif it is read-only.voidsetNamespace(Namespace namespace)voidsetText(String text)Sets the text data of this node or this method will throw anUnsupportedOperationExceptionif it is read-only.StringtoString()voidwrite(Writer out)writewrites this node as the default XML notation for this node.- 
Methods inherited from class org.dom4j.tree.AbstractBranch
addElement, addElement, addElement, appendContent, content, contentList, contentRemoved, createContentList, createContentList, createEmptyList, createResultList, createSingleResultList, elementByID, elementID, getContentAsStringValue, getContentAsText, getText, getTextTrim, hasContent, invalidNodeTypeAddException, isReadOnly, setProcessingInstructions 
- 
Methods inherited from class org.dom4j.tree.AbstractNode
asXPathResult, clone, createPattern, createXPath, createXPathFilter, createXPathResult, detach, getDocument, getNodeTypeName, getParent, getPath, getUniquePath, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, supportsParent, valueOf 
- 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait 
- 
Methods inherited from interface org.dom4j.Branch
addElement, addElement, appendContent, clearContent, content, elementByID, setContent, setProcessingInstructions 
- 
Methods inherited from interface org.dom4j.Element
getQName, getText, getTextTrim, setAttributes, setQName 
- 
Methods inherited from interface org.dom4j.Node
asXPathResult, clone, createXPath, detach, getDocument, getNodeTypeName, getParent, getPath, getUniquePath, hasContent, isReadOnly, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setParent, supportsParent, valueOf 
 - 
 
 - 
 
- 
- 
Field Detail
- 
VERBOSE_TOSTRING
protected static final boolean VERBOSE_TOSTRING
- See Also:
 - Constant Field Values
 
 
- 
USE_STRINGVALUE_SEPARATOR
protected static final boolean USE_STRINGVALUE_SEPARATOR
- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Method Detail
- 
getNodeType
public short getNodeType()
Description copied from interface:NodeReturns the code according to the type of node. This makes processing nodes polymorphically much easier as the switch statement can be used instead of multiple if (instanceof) statements.- Specified by:
 getNodeTypein interfaceNode- Overrides:
 getNodeTypein classAbstractNode- Returns:
 - a W3C DOM complient code for the node type such as ELEMENT_NODE or ATTRIBUTE_NODE
 
 
- 
isRootElement
public boolean isRootElement()
Description copied from interface:ElementDOCUMENT ME!- Specified by:
 isRootElementin interfaceElement- Returns:
 - true if this element is the root element of a document and this element supports the parent relationship else false.
 
 
- 
setName
public void setName(String name)
Description copied from interface:NodeSets the text data of this node or this method will throw an
UnsupportedOperationExceptionif it is read-only.- Specified by:
 setNamein interfaceNode- Overrides:
 setNamein classAbstractNode- Parameters:
 name- is the new name of this node
 
- 
setNamespace
public void setNamespace(Namespace namespace)
 
- 
getXPathNameStep
public String getXPathNameStep()
Returns the XPath expression to match this Elements name which is getQualifiedName() if there is a namespace prefix defined or if no namespace is present then it is getName() or if a namespace is defined with no prefix then the expression is [name()='X'] where X = getName().- Returns:
 - DOCUMENT ME!
 
 
- 
getPath
public String getPath(Element context)
Description copied from interface:NodeReturns the relative XPath expression which will return a node set containing the given node such as a/b/@c. No indexing will be used to restrict the path if multiple elements with the same name occur on the path.- Specified by:
 getPathin interfaceNode- Parameters:
 context- is the parent context from which the relative path should start. If the context is null or the context is not an ancestor of this node then the path will be absolute and start from the document and so begin with the '/' character.- Returns:
 - the XPath expression relative to the given context which will return a nodeset containing at least this node.
 
 
- 
getUniquePath
public String getUniquePath(Element context)
Description copied from interface:NodeReturns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node. This method will use the XPath index operator to restrict the path if multiple elements with the same name occur on the path.
- Specified by:
 getUniquePathin interfaceNode- Parameters:
 context- is the parent context from which the path should start. If the context is null or the context is not an ancestor of this node then the path will start from the document and so begin with the '/' character.- Returns:
 - the XPath expression relative to the given context which will return a nodeset containing just this node.
 
 
- 
asXML
public String asXML()
Description copied from interface:NodeasXMLreturns the textual XML representation of this node. 
- 
write
public void write(Writer out) throws IOException
Description copied from interface:Nodewritewrites this node as the default XML notation for this node. If you wish to control the XML output (such as for pretty printing, changing the indentation policy etc.) then please useXMLWriteror its derivations.- Specified by:
 writein interfaceNode- Overrides:
 writein classAbstractNode- Parameters:
 out- is theWriterto output the XML to- Throws:
 IOException- DOCUMENT ME!
 
- 
accept
public void accept(Visitor visitor)
acceptmethod is theVisitor Patternmethod. 
- 
getNamespace
public Namespace getNamespace()
Description copied from interface:ElementReturns theNamespaceof this element if one exists otherwiseNamespace.NO_NAMESPACEis returned.- Specified by:
 getNamespacein interfaceElement- Returns:
 - the 
Namespaceassociated with this element 
 
- 
getName
public String getName()
Description copied from interface:NodegetNamereturns the name of this node. This is the XML local name of the element, attribute, entity or processing instruction. For CDATA and Text nodes this method will return null.- Specified by:
 getNamein interfaceNode- Overrides:
 getNamein classAbstractNode- Returns:
 - the XML name of this node
 
 
- 
getNamespacePrefix
public String getNamespacePrefix()
Description copied from interface:ElementReturns the namespace prefix of this element if one exists otherwise an emptyStringis returned.- Specified by:
 getNamespacePrefixin interfaceElement- Returns:
 - the prefix of the 
Namespaceof this element or an emptyString 
 
- 
getNamespaceURI
public String getNamespaceURI()
Description copied from interface:ElementReturns the URI mapped to the namespace of this element if one exists otherwise an emptyStringis returned.- Specified by:
 getNamespaceURIin interfaceElement- Returns:
 - the URI for the 
Namespaceof this element or an emptyString 
 
- 
getQualifiedName
public String getQualifiedName()
Description copied from interface:ElementReturns the fully qualified name of this element. This will be the same as the value returned fromNode.getName()if this element has no namespace attached to this element or an expression of the formgetNamespacePrefix() + ":" + getName()
will be returned.- Specified by:
 getQualifiedNamein interfaceElement- Returns:
 - the fully qualified name of the element.
 
 
- 
getData
public Object getData()
Description copied from interface:ElementAccesses the data of this element which may implement data typing bindings such as XML Schema or Java Bean bindings or will return the same value asElement.getText() 
- 
setData
public void setData(Object data)
Description copied from interface:ElementSets the data value of this element if this element supports data binding or callsNode.setText(java.lang.String)if it doesn't 
- 
node
public Node node(int index)
Description copied from interface:BranchReturns theNodeat the specified index position.- Specified by:
 nodein interfaceBranch- Overrides:
 nodein classAbstractBranch- Parameters:
 index- the index of the node to return.- Returns:
 - the 
Nodeat the specified position. 
 
- 
indexOf
public int indexOf(Node node)
Description copied from interface:BranchReturns the index of the given node if it is a child node of this branch or -1 if the given node is not a child node.- Specified by:
 indexOfin interfaceBranch- Overrides:
 indexOfin classAbstractBranch- Parameters:
 node- the content child node to find.- Returns:
 - the index of the given node starting at 0 or -1 if the node is not a child node of this branch
 
 
- 
nodeCount
public int nodeCount()
Description copied from interface:BranchReturns the number ofNodeinstances that this branch contains.- Specified by:
 nodeCountin interfaceBranch- Overrides:
 nodeCountin classAbstractBranch- Returns:
 - the number of nodes this branch contains
 
 
- 
nodeIterator
public Iterator<Node> nodeIterator()
Description copied from interface:BranchReturns an iterator through the content nodes of this branch- Specified by:
 nodeIteratorin interfaceBranch- Overrides:
 nodeIteratorin classAbstractBranch- Returns:
 - an iterator through the content nodes of this branch
 
 
- 
element
public Element element(String name)
Description copied from interface:ElementReturns the first element for the given local name and any namespace. 
- 
element
public Element element(QName qName)
Description copied from interface:ElementReturns the first element for the given fully qualified name. 
- 
elements
public List<Element> elements()
Description copied from interface:ElementReturns the elements contained in this element. If this element does not contain any elements then this method returns an empty list. The list is backed by the element such that changes to the list will be reflected in the element though the reverse is not the case. 
- 
elements
public List<Element> elements(String name)
Description copied from interface:ElementReturns the elements contained in this element with the given local name and any namespace. If no elements are found then this method returns an empty list. The list is backed by the element such that changes to the list will be reflected in the element though the reverse is not the case. 
- 
elements
public List<Element> elements(QName qName)
Description copied from interface:ElementReturns the elements contained in this element with the given fully qualified name. If no elements are found then this method returns an empty list. The list is backed by the element such that changes to the list will be reflected in the element though the reverse is not the case. 
- 
elementIterator
public Iterator<Element> elementIterator()
Description copied from interface:ElementReturns an iterator over all this elements child elements.- Specified by:
 elementIteratorin interfaceElement- Returns:
 - an iterator over the contained elements
 
 
- 
elementIterator
public Iterator<Element> elementIterator(String name)
Description copied from interface:ElementReturns an iterator over the elements contained in this element which match the given local name and any namespace.- Specified by:
 elementIteratorin interfaceElement- Parameters:
 name- DOCUMENT ME!- Returns:
 - an iterator over the contained elements matching the given local name
 
 
- 
elementIterator
public Iterator<Element> elementIterator(QName qName)
Description copied from interface:ElementReturns an iterator over the elements contained in this element which match the given fully qualified name.- Specified by:
 elementIteratorin interfaceElement- Parameters:
 qName- is the fully qualified name to search for- Returns:
 - an iterator over the contained elements matching the given fully qualified name
 
 
- 
attributes
public List<Attribute> attributes()
Description copied from interface:ElementReturns theAttributeinstances this element contains as a backedListso that the attributes may be modified directly using theListinterface. TheListis backed by theElementso that changes to the list are reflected in the element and vice versa.- Specified by:
 attributesin interfaceElement- Returns:
 - the attributes that this element contains as a 
List 
 
- 
attributeIterator
public Iterator<Attribute> attributeIterator()
Description copied from interface:ElementDOCUMENT ME!- Specified by:
 attributeIteratorin interfaceElement- Returns:
 - an iterator over the attributes of this element
 
 
- 
attribute
public Attribute attribute(int index)
Description copied from interface:ElementReturns the attribute at the specified indexGets the 
- 
attributeCount
public int attributeCount()
Description copied from interface:ElementDOCUMENT ME!- Specified by:
 attributeCountin interfaceElement- Returns:
 - the number of attributes this element contains
 
 
- 
attribute
public Attribute attribute(String name)
Description copied from interface:ElementReturns the attribute with the given name 
- 
attribute
public Attribute attribute(QName qName)
Description copied from interface:ElementDOCUMENT ME! 
- 
setAttributes
public void setAttributes(Attributes attributes, NamespaceStack namespaceStack, boolean noNamespaceAttributes)
This method provides a more optimal way of setting all the attributes on an Element particularly for use inSAXReader.- Parameters:
 attributes- DOCUMENT ME!namespaceStack- DOCUMENT ME!noNamespaceAttributes- DOCUMENT ME!
 
- 
attributeValue
public String attributeValue(String name)
Description copied from interface:ElementThis returns the attribute value for the attribute with the given name and any namespace or null if there is no such attribute or the empty string if the attribute value is empty.- Specified by:
 attributeValuein interfaceElement- Parameters:
 name- is the name of the attribute value to be returned- Returns:
 - the value of the attribute, null if the attribute does not exist or the empty string
 
 
- 
attributeValue
public String attributeValue(QName qName)
Description copied from interface:ElementThis returns the attribute value for the attribute with the given fully qualified name or null if there is no such attribute or the empty string if the attribute value is empty.- Specified by:
 attributeValuein interfaceElement- Parameters:
 qName- is the fully qualified name- Returns:
 - the value of the attribute, null if the attribute does not exist or the empty string
 
 
- 
attributeValue
public String attributeValue(String name, String defaultValue)
Description copied from interface:ElementThis returns the attribute value for the attribute with the given name and any namespace or the default value if there is no such attribute value.- Specified by:
 attributeValuein interfaceElement- Parameters:
 name- is the name of the attribute value to be returneddefaultValue- is the default value to be returned if the attribute has no value defined.- Returns:
 - the value of the attribute or the defaultValue if the attribute has no value defined.
 
 
- 
attributeValue
public String attributeValue(QName qName, String defaultValue)
Description copied from interface:ElementThis returns the attribute value for the attribute with the given fully qualified name or the default value if there is no such attribute value.- Specified by:
 attributeValuein interfaceElement- Parameters:
 qName- is the fully qualified namedefaultValue- is the default value to be returned if the attribute has no value defined.- Returns:
 - the value of the attribute or the defaultValue if the attribute has no value defined.
 
 
- 
setAttributeValue
public void setAttributeValue(String name, String value)
Deprecated.As of version 0.5. Please useaddAttribute(String, String)instead. WILL BE REMOVED IN dom4j-1.6 !!DOCUMENT ME!- Specified by:
 setAttributeValuein interfaceElement- Parameters:
 name- DOCUMENT ME!value- DOCUMENT ME!
 
- 
setAttributeValue
public void setAttributeValue(QName qName, String value)
Deprecated.As of version 0.5. Please useaddAttribute(String, String)instead. WILL BE REMOVED IN dom4j-1.6 !!DOCUMENT ME!- Specified by:
 setAttributeValuein interfaceElement- Parameters:
 qName- DOCUMENT ME!value- DOCUMENT ME!
 
- 
add
public void add(Attribute attribute)
Description copied from interface:ElementAdds the givenAttributeto this element. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown. Attributes with null values are silently ignored. If the value of the attribute is null then this method call will remove any attributes with the QName of this attribute. 
- 
remove
public boolean remove(Attribute attribute)
Description copied from interface:ElementRemoves the givenAttributefrom this element. 
- 
processingInstructions
public List<ProcessingInstruction> processingInstructions()
Description copied from interface:BranchReturns a list of all the processing instructions in this branch. The list is backed by this branch so that changes to the list will be reflected in the branch but the reverse is not the case.- Specified by:
 processingInstructionsin interfaceBranch- Returns:
 - a backed list of the processing instructions
 
 
- 
processingInstructions
public List<ProcessingInstruction> processingInstructions(String target)
Description copied from interface:BranchReturns a list of the processing instructions for the given target. The list is backed by this branch so that changes to the list will be reflected in the branch but the reverse is not the case.- Specified by:
 processingInstructionsin interfaceBranch- Parameters:
 target- DOCUMENT ME!- Returns:
 - a backed list of the processing instructions
 
 
- 
processingInstruction
public ProcessingInstruction processingInstruction(String target)
Description copied from interface:BranchDOCUMENT ME!- Specified by:
 processingInstructionin interfaceBranch- Parameters:
 target- DOCUMENT ME!- Returns:
 - the processing instruction for the given target
 
 
- 
removeProcessingInstruction
public boolean removeProcessingInstruction(String target)
Description copied from interface:BranchRemoves the processing instruction for the given target if it exists- Specified by:
 removeProcessingInstructionin interfaceBranch- Parameters:
 target- DOCUMENT ME!- Returns:
 - true if a processing instruction was removed else false
 
 
- 
getXPathResult
public Node getXPathResult(int index)
Description copied from interface:ElementReturns a node at the given index suitable for an XPath result set. This means the resulting Node will either be null or it will support the parent relationship.- Specified by:
 getXPathResultin interfaceElement- Parameters:
 index- DOCUMENT ME!- Returns:
 - the Node for the given index which will support the parent relationship or null if there is not a node at the given index.
 
 
- 
addAttribute
public Element addAttribute(String name, String value)
Description copied from interface:ElementAdds the attribute value of the given local name. If an attribute already exists for the given name it will be replaced. Attributes with null values are silently ignored. If the value of the attribute is null then this method call will remove any attributes with the given name.- Specified by:
 addAttributein interfaceElement- Parameters:
 name- is the name of the attribute whose value is to be added or updatedvalue- is the attribute's value- Returns:
 - this 
Elementinstance. 
 
- 
addAttribute
public Element addAttribute(QName qName, String value)
Description copied from interface:ElementAdds the attribute value of the given fully qualified name. If an attribute already exists for the given name it will be replaced. Attributes with null values are silently ignored. If the value of the attribute is null then this method call will remove any attributes with the given name.- Specified by:
 addAttributein interfaceElement- Parameters:
 qName- is the fully qualified name of the attribute whose value is to be added or updatedvalue- is the attribute's value- Returns:
 - this 
Elementinstance. 
 
- 
addCDATA
public Element addCDATA(String cdata)
Description copied from interface:ElementAdds a newCDATAnode with the given text to this element. 
- 
addComment
public Element addComment(String comment)
Description copied from interface:ElementAdds a newCommentnode with the given text to this element.- Specified by:
 addCommentin interfaceElement- Parameters:
 comment- is the text for theCommentnode.- Returns:
 - this 
Elementinstance. 
 
- 
addElement
public Element addElement(String name)
Description copied from interface:BranchAdds a newElementnode with the given name to this branch and returns a reference to the new node.- Specified by:
 addElementin interfaceBranch- Overrides:
 addElementin classAbstractBranch- Parameters:
 name- is the name for theElementnode.- Returns:
 - the newly added 
Elementnode. 
 
- 
addEntity
public Element addEntity(String name, String text)
Description copied from interface:ElementAdds a newEntitynode with the given name and text to this element and returns a reference to the new node. 
- 
addNamespace
public Element addNamespace(String prefix, String uri)
Description copied from interface:ElementAdds a namespace to this element for use by its child content- Specified by:
 addNamespacein interfaceElement- Parameters:
 prefix- is the prefix to use, which should not be null or blankuri- is the namespace URI- Returns:
 - this 
Elementinstance. 
 
- 
addProcessingInstruction
public Element addProcessingInstruction(String target, String data)
Description copied from interface:ElementAdds a processing instruction for the given target- Specified by:
 addProcessingInstructionin interfaceElement- Parameters:
 target- is the target of the processing instructiondata- is the textual data (key/value pairs) of the processing instruction- Returns:
 - this 
Elementinstance. 
 
- 
addProcessingInstruction
public Element addProcessingInstruction(String target, Map<String,String> data)
Description copied from interface:ElementAdds a processing instruction for the given target- Specified by:
 addProcessingInstructionin interfaceElement- Parameters:
 target- is the target of the processing instructiondata- is a Map of the key / value pairs of the processing instruction- Returns:
 - this 
Elementinstance. 
 
- 
addText
public Element addText(String text)
Description copied from interface:ElementAdds a newTextnode with the given text to this element. 
- 
add
public void add(Node node)
Description copied from interface:BranchAdds the givenNodeor throwsIllegalAddExceptionif the given node is not of a valid type. This is a polymorphic method which will call the typesafe method for the node type such as add(Element) or add(Comment).- Specified by:
 addin interfaceBranch- Overrides:
 addin classAbstractBranch- Parameters:
 node- is the given node to add
 
- 
remove
public boolean remove(Node node)
Description copied from interface:BranchRemoves the givenNodeif the node is an immediate child of this branch. If the given node is not an immediate child of this branch then theNode.detach()method should be used instead. This is a polymorphic method which will call the typesafe method for the node type such as remove(Element) or remove(Comment).- Specified by:
 removein interfaceBranch- Overrides:
 removein classAbstractBranch- Parameters:
 node- is the given node to be removed- Returns:
 - true if the node was removed
 
 
- 
add
public void add(CDATA cdata)
Description copied from interface:ElementAdds the givenCDATAto this element. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown. 
- 
add
public void add(Comment comment)
Description copied from interface:BranchAdds the givenCommentto this branch. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown.- Specified by:
 addin interfaceBranch- Overrides:
 addin classAbstractBranch- Parameters:
 comment- is the comment to be added
 
- 
add
public void add(Element element)
Description copied from interface:BranchAdds the givenElementto this branch. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown.- Specified by:
 addin interfaceBranch- Overrides:
 addin classAbstractBranch- Parameters:
 element- is the element to be added
 
- 
add
public void add(Entity entity)
Description copied from interface:ElementAdds the givenEntityto this element. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown. 
- 
add
public void add(Namespace namespace)
Description copied from interface:ElementAdds the givenNamespaceto this element. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown. 
- 
add
public void add(ProcessingInstruction pi)
Description copied from interface:BranchAdds the givenProcessingInstructionto this branch. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown.- Specified by:
 addin interfaceBranch- Overrides:
 addin classAbstractBranch- Parameters:
 pi- is the processing instruction to be added
 
- 
add
public void add(Text text)
Description copied from interface:ElementAdds the givenTextto this element. If the given node already has a parent defined then anIllegalAddExceptionwill be thrown. 
- 
remove
public boolean remove(CDATA cdata)
Description copied from interface:ElementRemoves the givenCDATAif the node is an immediate child of this element. If the given node is not an immediate child of this element then theNode.detach()method should be used instead. 
- 
remove
public boolean remove(Comment comment)
Description copied from interface:BranchRemoves the givenCommentif the node is an immediate child of this branch. If the given node is not an immediate child of this branch then theNode.detach()method should be used instead.- Specified by:
 removein interfaceBranch- Overrides:
 removein classAbstractBranch- Parameters:
 comment- is the comment to be removed- Returns:
 - true if the comment was removed
 
 
- 
remove
public boolean remove(Element element)
Description copied from interface:BranchRemoves the givenElementif the node is an immediate child of this branch. If the given node is not an immediate child of this branch then theNode.detach()method should be used instead.- Specified by:
 removein interfaceBranch- Overrides:
 removein classAbstractBranch- Parameters:
 element- is the element to be removed- Returns:
 - true if the element was removed
 
 
- 
remove
public boolean remove(Entity entity)
Description copied from interface:ElementRemoves the givenEntityif the node is an immediate child of this element. If the given node is not an immediate child of this element then theNode.detach()method should be used instead. 
- 
remove
public boolean remove(Namespace namespace)
Description copied from interface:ElementRemoves the givenNamespaceif the node is an immediate child of this element. If the given node is not an immediate child of this element then theNode.detach()method should be used instead. 
- 
remove
public boolean remove(ProcessingInstruction pi)
Description copied from interface:BranchRemoves the givenProcessingInstructionif the node is an immediate child of this branch. If the given node is not an immediate child of this branch then theNode.detach()method should be used instead.- Specified by:
 removein interfaceBranch- Overrides:
 removein classAbstractBranch- Parameters:
 pi- is the processing instruction to be removed- Returns:
 - true if the processing instruction was removed
 
 
- 
remove
public boolean remove(Text text)
Description copied from interface:ElementRemoves the givenTextif the node is an immediate child of this element. If the given node is not an immediate child of this element then theNode.detach()method should be used instead. 
- 
hasMixedContent
public boolean hasMixedContent()
Description copied from interface:ElementReturns true if thisElementhas mixed content. Mixed content means that an element contains both textual data and child elements.- Specified by:
 hasMixedContentin interfaceElement- Returns:
 - true if this element contains mixed content.
 
 
- 
isTextOnly
public boolean isTextOnly()
Description copied from interface:ElementReturns true if thisElementhas text only content.- Specified by:
 isTextOnlyin interfaceElement- Returns:
 - true if this element is empty or only contains text content.
 
 
- 
setText
public void setText(String text)
Description copied from interface:NodeSets the text data of this node or this method will throw an
UnsupportedOperationExceptionif it is read-only.- Specified by:
 setTextin interfaceNode- Overrides:
 setTextin classAbstractNode- Parameters:
 text- is the new textual value of this node
 
- 
getStringValue
public String getStringValue()
Description copied from interface:NodeReturns the XPath string-value of this node. The behaviour of this method is defined in the XPath specification .- Specified by:
 getStringValuein interfaceElement- Specified by:
 getStringValuein interfaceNode- Overrides:
 getStringValuein classAbstractNode- Returns:
 - the text from all the child Text and Element nodes appended together.
 
 
- 
normalize
public void normalize()
Puts allTextnodes in the full depth of the sub-tree underneath thisNode, including attribute nodes, into a "normal" form where only structure (e.g., elements, comments, processing instructions, CDATA sections, and entity references) separatesTextnodes, i.e., there are neither adjacentTextnodes nor emptyTextnodes. This can be used to ensure that the DOM view of a document is the same as if it were saved and re-loaded, and is useful when operations (such as XPointer lookups) that depend on a particular document tree structure are to be used.In cases where the document containsCDATASections, the normalize operation alone may not be sufficient, since XPointers do not differentiate betweenTextnodes andCDATASectionnodes. 
- 
elementText
public String elementText(String name)
- Specified by:
 elementTextin interfaceElement
 
- 
elementText
public String elementText(QName qName)
- Specified by:
 elementTextin interfaceElement
 
- 
elementTextTrim
public String elementTextTrim(String name)
- Specified by:
 elementTextTrimin interfaceElement
 
- 
elementTextTrim
public String elementTextTrim(QName qName)
- Specified by:
 elementTextTrimin interfaceElement
 
- 
appendAttributes
public void appendAttributes(Element element)
Description copied from interface:ElementAppends the attributes of the given element to me. This method behaves like theCollection.addAll(java.util.Collection)method.- Specified by:
 appendAttributesin interfaceElement- Parameters:
 element- is the element whose attributes will be added to me.
 
- 
createCopy
public Element createCopy()
This returns a deep clone of this element. The new element is detached from its parent, and getParent() on the clone will return null.
- Specified by:
 createCopyin interfaceElement- Returns:
 - the clone of this element
 
 
- 
createCopy
public Element createCopy(String name)
Description copied from interface:ElementCreates a deep copy of this element with the given local name The new element is detached from its parent, and getParent() on the clone will return null.- Specified by:
 createCopyin interfaceElement- Parameters:
 name- DOCUMENT ME!- Returns:
 - a new deep copy Element
 
 
- 
createCopy
public Element createCopy(QName qName)
Description copied from interface:ElementCreates a deep copy of this element with the given fully qualified name. The new element is detached from its parent, and getParent() on the clone will return null.- Specified by:
 createCopyin interfaceElement- Parameters:
 qName- DOCUMENT ME!- Returns:
 - a new deep copy Element
 
 
- 
getQName
public QName getQName(String qualifiedName)
Description copied from interface:ElementReturns theQNamefor the given qualified name, using the namespace URI in scope for the given prefix of the qualified name or the default namespace if the qualified name has no prefix. 
- 
getNamespaceForPrefix
public Namespace getNamespaceForPrefix(String prefix)
Description copied from interface:ElementReturns theNamespacewhich is mapped to the given prefix or null if it could not be found.- Specified by:
 getNamespaceForPrefixin interfaceElement- Parameters:
 prefix- DOCUMENT ME!- Returns:
 - the 
Namespaceassociated with the given prefix 
 
- 
getNamespaceForURI
public Namespace getNamespaceForURI(String uri)
Description copied from interface:ElementReturns theNamespacewhich is mapped to the given URI or null if it could not be found. If there is more than oneNamespacemapped to the URI, which of them will be returned is undetermined.- Specified by:
 getNamespaceForURIin interfaceElement- Parameters:
 uri- DOCUMENT ME!- Returns:
 - the 
Namespaceassociated with the given URI 
 
- 
getNamespacesForURI
public List<Namespace> getNamespacesForURI(String uri)
Description copied from interface:ElementReturns the all namespaces which are mapped to the given URI or an empty list if no such namespaces could be found.- Specified by:
 getNamespacesForURIin interfaceElement- Parameters:
 uri- DOCUMENT ME!- Returns:
 - the namespaces associated with the given URI
 
 
- 
declaredNamespaces
public List<Namespace> declaredNamespaces()
Description copied from interface:ElementReturns all the namespaces declared by this element. If no namespaces are declared for this element then an empty list will be returned. The list is backed by the element such that changes to the list will be reflected in the element though the reverse is not the case.- Specified by:
 declaredNamespacesin interfaceElement- Returns:
 - a list of namespaces declared for this element.
 
 
- 
additionalNamespaces
public List<Namespace> additionalNamespaces()
Description copied from interface:ElementReturns any additional namespaces declarations for this element other than namespace returned via theElement.getNamespace()method. If no additional namespace declarations are present for this element then an empty list will be returned. The list is backed by the element such that changes to the list will be reflected in the element though the reverse is not the case.- Specified by:
 additionalNamespacesin interfaceElement- Returns:
 - a list of any additional namespace declarations.
 
 
- 
ensureAttributesCapacity
public void ensureAttributesCapacity(int minCapacity)
Ensures that the list of attributes has the given size- Parameters:
 minCapacity- DOCUMENT ME!
 
- 
addNode
protected void addNode(Node node)
- Specified by:
 addNodein classAbstractBranch
 
- 
addNode
protected void addNode(int index, Node node)- Specified by:
 addNodein classAbstractBranch
 
- 
addNewNode
protected void addNewNode(Node node)
Like addNode() but does not require a parent check- Parameters:
 node- DOCUMENT ME!
 
- 
addNewNode
protected void addNewNode(int index, Node node) 
- 
removeNode
protected boolean removeNode(Node node)
- Specified by:
 removeNodein classAbstractBranch
 
- 
childAdded
protected void childAdded(Node node)
Called when a new child node is added to create any parent relationships- Specified by:
 childAddedin classAbstractBranch- Parameters:
 node- DOCUMENT ME!
 
- 
childRemoved
protected void childRemoved(Node node)
Description copied from class:AbstractBranchCalled when a child node has been removed to allow any parent relationships to be deleted or events to be fired.- Specified by:
 childRemovedin classAbstractBranch- Parameters:
 node- DOCUMENT ME!
 
- 
attributeList
protected abstract List<Attribute> attributeList()
DOCUMENT ME!- Returns:
 - the internal List used to store attributes or creates one if one is not available
 
 
- 
attributeList
protected abstract List<Attribute> attributeList(int attributeCount)
DOCUMENT ME!- Parameters:
 attributeCount- DOCUMENT ME!- Returns:
 - the internal List used to store attributes or creates one with the specified size if one is not available
 
 
- 
getDocumentFactory
protected DocumentFactory getDocumentFactory()
- Overrides:
 getDocumentFactoryin classAbstractNode
 
- 
createAttributeList
protected List<Attribute> createAttributeList()
A Factory Method pattern which creates a List implementation used to store attributes- Returns:
 - DOCUMENT ME!
 
 
- 
createAttributeList
protected List<Attribute> createAttributeList(int size)
A Factory Method pattern which creates a List implementation used to store attributes- Parameters:
 size- DOCUMENT ME!- Returns:
 - DOCUMENT ME!
 
 
- 
createSingleIterator
protected <T> Iterator<T> createSingleIterator(T result)
 
 - 
 
 -