createProcessingInstruction Method
Creates a processing instruction node that contains the supplied target and data.
Script Syntax
var objXMLDOMProcessingInstruction = oXMLDOMDocument.createProcessingInstruction(target, data);
Parameters
- target
- A string specifying the target part of the processing instruction. This supplies the
nodeNameproperty of the new object. - data
- A string specifying the rest of the processing instruction preceding the closing ?> characters. This supplies the
nodeValueproperty for the new object.
Return Value
An object. Returns the new IXMLDOMProcessingInstruction object.
Example
The following script example specifies the target string "xml" and the data string "version=\"1.0\"" to generate the processing instruction <?XML version="1.0"?>.
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.5.0");
var pi;
xmlDoc.async = false;
xmlDoc.load("books.xml");
if (xmlDoc.parseError.errorCode != 0) {
var myErr = xmlDoc.parseError;
alert("You have error " + myErr.reason);
} else {
pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\"");
xmlDoc.insertBefore(pi, xmlDoc.childNodes.item(0));
alert(xmlDoc.xml);
}
Visual Basic Syntax
Set objXMLDOMProcessingInstruction = oXMLDOMDocument.createProcessingInstruction(target, data)
Parameters
- target
- A string specifying the target part of the processing instruction. This supplies the
nodeNameproperty of the new object. - data
- A string specifying the rest of the processing instruction preceding the closing ?> characters. This supplies the
nodeValueproperty for the new object.
Return Value
An object. Returns the new IXMLDOMProcessingInstruction object.
Example
The following Microsoft® Visual Basic® example specifies the target string "xml" and data string "version = \"1.0\"" to generate the processing instruction <?XML version="1.0"?>.
Dim xmlDoc As New Msxml2.DOMDocument50
Dim pi As IXMLDOMProcessingInstruction
xmlDoc.async = False
xmlDoc.Load ("books.xml")
If (xmlDoc.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = xmlDoc.parseError
MsgBox("You have error " & myErr.reason)
Else
Set pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\"")
xmlDoc.insertBefore pi, xmlDoc.childNodes.Item(0)
MsgBox (xmlDoc.xml)
End If
C/C++ Syntax
HRESULT createProcessingInstruction(
BSTR target,
BSTR data,
IXMLDOMProcessingInstruction **pi);
Parameters
- target [in]
- The target part of the processing instruction. It supplies the
nodeNameproperty of the new object. - data [in]
- The remainder of the processing instruction preceding the closing ?> characters. It supplies the
nodeValueproperty for the new object. - pi [out, retval]
- The address of the new
IXMLDOMProcessingInstructionobject.
C/C++ Return Values
- S_OK
- The value returned if successful.
- E_INVALIDARG
- The value returned if the
piparameter is Null. - E_FAIL
- The value returned if an error occurs.
Remarks
Creating a processing instruction node with this method is the same as using createNode where the Type parameter value is NODE_PROCESSING_INSTRUCTION and no namespace is specified. You cannot specify a namespace with the createProcessingInstruction 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 new object's nodeType property has the value NODE_PROCESSING_INSTRUCTION.
To view reference information for Visual Basic, C/C++, or Script only, click the Language Filter button
in the upper-left corner of the page.
See Also
nodeName Property | nodeType Property | nodeValue Property | IXMLDOMProcessingInstruction | createNode Method | ownerDocument Property | insertBefore Method | replaceChild Method | appendChild Method
Applies to: DOMDocument
