createDocumentFragment Method

MSXML 5.0 SDK

Microsoft XML Core Services (MSXML) 5.0 for Microsoft Office - DOM Reference

createDocumentFragment Method

Creates an empty IXMLDOMDocumentFragment object.

[Script]

Script Syntax

var objXMLDOMDocumentFragment = oXMLDOMDocument.createDocumentFragment();

Return Value

An object. Returns the empty IXMLDOMDocumentFragment object.

Example

var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.5.0");
var docFragment;
xmlDoc.async = false;
xmlDoc.loadXML("<root/>");
if (xmlDoc.parseError.errorCode != 0) {
   var myErr = xmlDoc.parseError;
   alert("You have error " + myErr.reason);
} else {
   docFragment = xmlDoc.createDocumentFragment();
   docFragment.appendChild(xmlDoc.createElement("node1"));
   docFragment.appendChild(xmlDoc.createElement("node2"));
   docFragment.appendChild(xmlDoc.createElement("node3"));
   alert(docFragment.xml);
   xmlDoc.documentElement.appendChild(docFragment);
   alert(xmlDoc.xml);
}
[Visual Basic]

Visual Basic Syntax

Set objXMLDOMDocumentFragment = oXMLDOMDocument.createDocumentFragment

Return Value

An object. Returns the empty IXMLDOMDocumentFragment object.

Example

Dim xmlDoc As New Msxml2.DOMDocument50
Dim docFragment As IXMLDOMDocumentFragment
xmlDoc.async = False
xmlDoc.loadXML "<root/>"
If (xmlDoc.parseError.errorCode <> 0) Then
   Dim myErr
   Set myErr = xmlDoc.parseError
   MsgBox("You have error " & myErr.reason)
Else
   Set docFragment = xmlDoc.createDocumentFragment()
   docFragment.appendChild xmlDoc.createElement("node1")
   docFragment.appendChild xmlDoc.createElement("node2")
   docFragment.appendChild xmlDoc.createElement("node3")
   MsgBox docFragment.xml
   xmlDoc.documentElement.appendChild docFragment
   MsgBox xmlDoc.xml
End If
[C/C++]

C/C++ Syntax

HRESULT createDocumentFragment(
    IXMLDOMDocumentFragment **docFrag);

Parameters

docFrag [out, retval]
The address of the empty IXMLDOMDocumentFragment.

C/C++ Return Values

S_OK
The value returned if successful.
E_INVALIDARG
The value returned if the docFrag parameter is Null.
E_FAIL
The value returned if an error occurs.

Remarks

Creating a document fragment with this method is the same as using createNode where the type parameter value is NODE_DOCUMENT_FRAGMENT and no namespace is specified. You cannot specify a namespace with the createDocumentFragment method.

Although this method creates the new object in the context of this document, it does not automatically add the new object to the document tree. In other words, although the ownerDocument property of the new node points to this document object, the parentNode property is set to Null. To add the new object, you must explicitly call one of the node insert methods, insertBefore method, replaceChild method, or appendChild method.

The nodeType property has the value NODE_DOCUMENT_FRAGMENT.

To view reference information for Visual Basic, C/C++, or Script only, click the Language Filter button Language Filter in the upper-left corner of the page.

See Also

createNode Method | ownerDocument Property | parentNode Property | nodeType property | insertBefore Method | replaceChild Method | appendChild Method | IXMLDOMDocumentFragment

Applies to: DOMDocument