Xerces-C++  3.1.3
List of all members
DOMDocumentFragment Class Reference

DOMDocumentFragment is a "lightweight" or "minimal" DOMDocument object. More...

Inheritance diagram for DOMDocumentFragment:
DOMNode

Public Member Functions

Destructor
virtual ~DOMDocumentFragment ()
 Destructor. More...
 
- Public Member Functions inherited from DOMNode
virtual ~DOMNode ()
 Destructor. More...
 
virtual const XMLChgetNodeName () const =0
 The name of this node, depending on its type; see the table above. More...
 
virtual const XMLChgetNodeValue () const =0
 Gets the value of this node, depending on its type. More...
 
virtual NodeType getNodeType () const =0
 An enum value representing the type of the underlying object. More...
 
virtual DOMNodegetParentNode () const =0
 Gets the parent of this node. More...
 
virtual DOMNodeListgetChildNodes () const =0
 Gets a DOMNodeList that contains all children of this node. More...
 
virtual DOMNodegetFirstChild () const =0
 Gets the first child of this node. More...
 
virtual DOMNodegetLastChild () const =0
 Gets the last child of this node. More...
 
virtual DOMNodegetPreviousSibling () const =0
 Gets the node immediately preceding this node. More...
 
virtual DOMNodegetNextSibling () const =0
 Gets the node immediately following this node. More...
 
virtual DOMNamedNodeMapgetAttributes () const =0
 Gets a DOMNamedNodeMap containing the attributes of this node (if it is an DOMElement) or null otherwise. More...
 
virtual DOMDocumentgetOwnerDocument () const =0
 Gets the DOMDocument object associated with this node. More...
 
virtual DOMNodecloneNode (bool deep) const =0
 Returns a duplicate of this node. More...
 
virtual DOMNodeinsertBefore (DOMNode *newChild, DOMNode *refChild)=0
 Inserts the node newChild before the existing child node refChild. More...
 
virtual DOMNodereplaceChild (DOMNode *newChild, DOMNode *oldChild)=0
 Replaces the child node oldChild with newChild in the list of children, and returns the oldChild node. More...
 
virtual DOMNoderemoveChild (DOMNode *oldChild)=0
 Removes the child node indicated by oldChild from the list of children, and returns it. More...
 
virtual DOMNodeappendChild (DOMNode *newChild)=0
 Adds the node newChild to the end of the list of children of this node. More...
 
virtual bool hasChildNodes () const =0
 This is a convenience method to allow easy determination of whether a node has any children. More...
 
virtual void setNodeValue (const XMLCh *nodeValue)=0
 Sets the value of the node. More...
 
virtual void normalize ()=0
 Puts all DOMText nodes in the full depth of the sub-tree underneath this DOMNode, including attribute nodes, into a "normal" form where only markup (e.g., tags, comments, processing instructions, CDATA sections, and entity references) separates DOMText nodes, i.e., there are neither adjacent DOMText nodes nor empty DOMText nodes. More...
 
virtual bool isSupported (const XMLCh *feature, const XMLCh *version) const =0
 Tests whether the DOM implementation implements a specific feature and that feature is supported by this node. More...
 
virtual const XMLChgetNamespaceURI () const =0
 Get the namespace URI of this node, or null if it is unspecified. More...
 
virtual const XMLChgetPrefix () const =0
 Get the namespace prefix of this node, or null if it is unspecified. More...
 
virtual const XMLChgetLocalName () const =0
 Returns the local part of the qualified name of this node. More...
 
virtual void setPrefix (const XMLCh *prefix)=0
 Set the namespace prefix of this node. More...
 
virtual bool hasAttributes () const =0
 Returns whether this node (if it is an element) has any attributes. More...
 
virtual bool isSameNode (const DOMNode *other) const =0
 Returns whether this node is the same node as the given one. More...
 
virtual bool isEqualNode (const DOMNode *arg) const =0
 Tests whether two nodes are equal. More...
 
virtual void * setUserData (const XMLCh *key, void *data, DOMUserDataHandler *handler)=0
 Associate an object to a key on this node. More...
 
virtual void * getUserData (const XMLCh *key) const =0
 Retrieves the object associated to a key on a this node. More...
 
virtual const XMLChgetBaseURI () const =0
 The absolute base URI of this node or null if undefined. More...
 
virtual short compareDocumentPosition (const DOMNode *other) const =0
 Compares the reference node, i.e. More...
 
virtual const XMLChgetTextContent () const =0
 This attribute returns the text content of this node and its descendants. More...
 
virtual void setTextContent (const XMLCh *textContent)=0
 This attribute removes any possible children this node may have and, if the new string is not empty or null, replaced by a single DOMText node containing the string this attribute is set to. More...
 
virtual const XMLChlookupPrefix (const XMLCh *namespaceURI) const =0
 Look up the prefix associated to the given namespace URI, starting from this node. More...
 
virtual bool isDefaultNamespace (const XMLCh *namespaceURI) const =0
 This method checks if the specified namespaceURI is the default namespace or not. More...
 
virtual const XMLChlookupNamespaceURI (const XMLCh *prefix) const =0
 Look up the namespace URI associated to the given prefix, starting from this node. More...
 
virtual void * getFeature (const XMLCh *feature, const XMLCh *version) const =0
 This method makes available a DOMNode's specialized interface. More...
 
virtual void release ()=0
 Called to indicate that this Node (and its associated children) is no longer in use and that the implementation may relinquish any resources associated with it and its associated children. More...
 

Protected Member Functions

Hidden constructors
 DOMDocumentFragment ()
 
- Protected Member Functions inherited from DOMNode
 DOMNode ()
 
 DOMNode (const DOMNode &)
 

Additional Inherited Members

- Public Types inherited from DOMNode
enum  NodeType {
  ELEMENT_NODE = 1, ATTRIBUTE_NODE = 2, TEXT_NODE = 3, CDATA_SECTION_NODE = 4,
  ENTITY_REFERENCE_NODE = 5, ENTITY_NODE = 6, PROCESSING_INSTRUCTION_NODE = 7, COMMENT_NODE = 8,
  DOCUMENT_NODE = 9, DOCUMENT_TYPE_NODE = 10, DOCUMENT_FRAGMENT_NODE = 11, NOTATION_NODE = 12
}
 NodeType. More...
 
enum  DocumentPosition {
  DOCUMENT_POSITION_DISCONNECTED = 0x01, DOCUMENT_POSITION_PRECEDING = 0x02, DOCUMENT_POSITION_FOLLOWING = 0x04, DOCUMENT_POSITION_CONTAINS = 0x08,
  DOCUMENT_POSITION_CONTAINED_BY = 0x10, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20
}
 DocumentPosition: More...
 

Detailed Description

DOMDocumentFragment is a "lightweight" or "minimal" DOMDocument object.

It is very common to want to be able to extract a portion of a document's tree or to create a new fragment of a document. Imagine implementing a user command like cut or rearranging a document by moving fragments around. It is desirable to have an object which can hold such fragments and it is quite natural to use a DOMNode for this purpose. While it is true that a DOMDocument object could fulfill this role, a DOMDocument object can potentially be a heavyweight object, depending on the underlying implementation. What is really needed for this is a very lightweight object. DOMDocumentFragment is such an object.

Furthermore, various operations – such as inserting nodes as children of another DOMNode – may take DOMDocumentFragment objects as arguments; this results in all the child nodes of the DOMDocumentFragment being moved to the child list of this node.

The children of a DOMDocumentFragment node are zero or more nodes representing the tops of any sub-trees defining the structure of the document. DOMDocumentFragment nodes do not need to be well-formed XML documents (although they do need to follow the rules imposed upon well-formed XML parsed entities, which can have multiple top nodes). For example, a DOMDocumentFragment might have only one child and that child node could be a DOMText node. Such a structure model represents neither an HTML document nor a well-formed XML document.

When a DOMDocumentFragment is inserted into a DOMDocument (or indeed any other DOMNode that may take children) the children of the DOMDocumentFragment and not the DOMDocumentFragment itself are inserted into the DOMNode. This makes the DOMDocumentFragment very useful when the user wishes to create nodes that are siblings; the DOMDocumentFragment acts as the parent of these nodes so that the user can use the standard methods from the DOMNode interface, such as insertBefore() and appendChild().

Since
DOM Level 1

Constructor & Destructor Documentation

DOMDocumentFragment::DOMDocumentFragment ( )
protected
virtual DOMDocumentFragment::~DOMDocumentFragment ( )
virtual

Destructor.


The documentation for this class was generated from the following file: