input Property
Specifies which XML input tree to transform.
[Script]
Script Syntax
var objXMLDOMNode = objXSLProcessor.input; objXMLDOMXSLProcessor.input = objXMLDOMNode;
Example
var xslt = new ActiveXObject("Msxml2.XSLTemplate.5.0");
var xslDoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.5.0");
var xslProc;
xslDoc.async = false;
xslDoc.load("sample2.xsl");
if (xslDoc.parseError.errorCode != 0) {
var myErr = xmlDoc.parseError;
alert("You have error " + myErr.reason);
} else {
xslt.stylesheet = xslDoc;
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.5.0");
xmlDoc.async = false;
xmlDoc.load("books.xml");
if (xmlDoc.parseError.errorCode != 0) {
var myErr = xmlDoc.parseError;
alert("You have error " + myErr.reason);
} else {
xslProc = xslt.createProcessor();
xslProc.input = xmlDoc;
xslProc.transform();
alert(xslProc.output);
}
}
function alert(str) { WScript.Echo(str); }
Sample2.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:param name="param1"/>
<xsl:template match="/">
Hello
</xsl:template>
<xsl:template match="/" mode="edit">
In Edit Mode
</xsl:template>
<xsl:template match="/" mode="view">
In View Mode
</xsl:template>
</xsl:stylesheet>
[Visual Basic]
Visual Basic Syntax
Set objXMLDOMNode = objXSLProcessor.input objXMLDOMXSLProcessor.input = objXMLDOMNode
Example
Dim xslt As New Msxml2.XSLTemplate50
Dim xslDoc As New Msxml2.FreeThreadedDOMDocument50
Dim xmlDoc As New Msxml2.DOMDocument50
Dim xslProc As IXSLProcessor
xslDoc.async = False
xslDoc.Load "sample2.xsl"
If (xmlDoc.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = xmlDoc.parseError
MsgBox("You have error " & myErr.reason)
Else
Set xslt.stylesheet = xslDoc
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 xslProc = xslt.createProcessor()
xslProc.input = xmlDoc
xslProc.Transform
MsgBox xslProc.output
End If
End If
Sample2.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:param name="param1"/>
<xsl:template match="/">
Hello
</xsl:template>
<xsl:template match="/" mode="edit">
In Edit Mode
</xsl:template>
<xsl:template match="/" mode="view">
In View Mode
</xsl:template>
</xsl:stylesheet>
[C/C++]
C/C++ Syntax
HRESULT get_input (VARIANT * pVar); HRESULT put_input (VARIANT pVar);
Parameters
- pVar [out, retval][in]
- The input XML to which to apply the transformation. This can be a URL (string/BSTR), a
DOMDocumentobject, anIXMLDOMNodeor any object that supportsISequentialStream,IStream, orIPersistStream. If applying the transformation to anIXMLDOMNode, any node type and any threading model can be specified. If this argument is Null, the existing input will be cleared.
C/C++ Return Values
- E_FAIL
- The value returned if
readyStateis READYSTATE_INTERACTIVE. - E_INVALIDARG
- The value returned if the variant is not VT_DISPATCH or VT_UNKNOWN.
- E_NOINTERFACE
- The value returned if the argument does not support
IStreamorIXMLDOMNode.
Remarks
Setting this property resets the state of the processor.
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
Applies to: IXSLProcessor
