transformNode Method
Processes this node and its children using the supplied XSL Transformations (XSLT) style sheet and returns the resulting transformation.
JScript Syntax
strValue = oXMLDOMNode.transformNode(objStylesheet);
Parameters
objstylesheet
An object. A valid XML document or DOM node that consists of XSLT elements that direct the transformation of this node.
Return Value
A string. Returns a string that contains the product of the transformation of this XML document based on the XSLT style sheet.
Example
The following Microsoft JScript example shows the result of transformNode
.
Note
You can use books.xml and sample2.xml (below) to run this sample code.
// Load data.
var source = new ActiveXObject("Msxml2.DOMDocument.3.0");
source.async = false;
source.load("books.xml");
if (source.parseError.errorCode != 0) {
var myErr = source.parseError;
WScript.Echo("You have error " + myErr.reason);
} else {
// Load style sheet.
var stylesheet = new ActiveXObject("Msxml2.DOMDocument.3.0");
stylesheet.async = false
stylesheet.load("sample.xsl");
if (stylesheet.parseError.errorCode != 0) {
var myErr = stylesheet.parseError;
WScript.Echo("You have error " + myErr.reason);
} else {
// Echo back XSLT output to console
WScript.Echo(source.transformNode(stylesheet));
}
}
Visual Basic Syntax
strValue = oXMLDOMNode.transformNode
(objStylesheet)
Parameters
objstylesheet
An object. A valid XML document or DOM node that consists of XSLT elements that direct the transformation of this node.
Return Value
A string. Returns a string that contains the product of the transformation of this XML document based on the XSLT style sheet.
Example
The following Microsoft Visual Basic example displays the result of transformNode
.
Dim source As New Msxml2.DOMDocument30
Dim stylesheet As New Msxml2.DOMDocument30
' Load data.
source.async = False
source.Load App.Path & "\books.xml"
If (source.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = source.parseError
MsgBox("You have error " & myErr.reason)
Else
' Load style sheet.
stylesheet.async = False
stylesheet.Load App.Path & "\sample.xsl"
If (stylesheet.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = stylesheet.parseError
MsgBox("You have error " & myErr.reason)
Else
' Do the transform.
MsgBox source.transformNode(stylesheet)
End If
End If
C/C++ Syntax
HRESULT transformNode(
IXMLDOMNode *stylesheet,
BSTR *xmlString);
Parameters
stylesheet
[in]
A valid XML document or DOM node that consists of XSLT elements that direct the transformation of this node.
xmlString
[out, retval]
A string that contains the product of the transformation of this XML document based on the XSLT style sheet.
Return Values
S_OK
The value returned if successful.
E_INVALIDARG
The value returned if the stylesheet
or xmlString
parameter is Null.
Remarks
The stylesheet
parameter must be either a DOMDocument
node, in which case the document is assumed to be an Extensible Stylesheet Language (XSL) style sheet, or a Document Object Model (DOM) node in the XSL style sheet, in which case this node is treated as a standalone style sheet fragment.
The source node defines a context in which the style sheet operates, but navigation outside this scope is allowed. For example, a style sheet can use the id
function to access other parts of the document.
This method supports both standalone and embedded style sheets and also provides the ability to run a localized style sheet fragment against a particular source node.
This member is an extension of the World Wide Web Consortium (W3C) DOM.
For more information about XSLT style sheets, see the XSLT Reference.
Versioning
Implemented in: MSXML 3.0 and later
See Also
Using XSLT with the DOM or SAX
IXMLDOMAttribute
IXMLDOMCDATASection
IXMLDOMCharacterData
IXMLDOMComment
IXMLDOMDocument-DOMDocument
IXMLDOMDocumentFragment
IXMLDOMDocumentType
IXMLDOMElement
IXMLDOMEntity
IXMLDOMEntityReference
IXMLDOMNode
IXMLDOMNotation
IXMLDOMProcessingInstruction
IXMLDOMText