Subject: RE: Microsoft's .Net XML 'System.Xml.Xsl.XslTransform' and Scripting
From: "Ivan Pedruzzi" <ivan@xxxxxxxx>
Date: Tue, 14 Jan 2003 15:25:24 -0500
|
As the error pointa out VBScript is not supported under .NET use "VB"
instead.
System.Xml.Xsl.XsltCompileException: file:///c:/Program Files/eXcelon
Corp/Stylus Studio/examples/dotnet.xsl(17,4) :
---> System.Xml.Xsl.XsltException: The scripting language 'vbscript' is
not supported.
at System.Xml.Xsl.ContainerAction.AddScript(Compiler compiler)
at
System.Xml.Xsl.ContainerAction.CompileTopLevelElements(Compiler
compiler)
at System.Xml.Xsl.ContainerAction.CompileDocument(Compiler
compiler, Boolean inInclude)
at System.Xml.Xsl.RootActionDbg.Compile(Compiler compiler)
at System.Xml.Xsl.DbgCompiler.CreateRootAction()
Ivan
> -----Original Message-----
> From: John Aschenbrenner [mailto:jaschenbrenner@xxxxxxxxxxxxxxx]
> Sent: Tuesday, January 14, 2003 1:21 PM
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Microsoft's .Net XML
> 'System.Xml.Xsl.XslTransform' and Scripting
>
>
> Has anyone been able to get the above .Net assembly to work
> with XSL that contains script. In the past I have been able
> to embed VB & Java Script in a CDATA section in the XSL file
> and have it work fine using MSXML. Does anyone know if this
> still works and if so how? I have not been able to get it to
> work with the following example.
>
> <!-- Source file -->
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
> <row theDate="2003-01-14"/>
> </root>
>
> <!-- Transform file -->
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
> xmlns:msxsl='urn:schemas-microsoft-com:xslt'
> xmlns:var='urn:var'
> xmlns:user='urn:user'
> exclude-result-prefixes='msxsl var user'
> version='1.0'>
> <xsl:output method="html" encoding="utf-8"/>
> <xsl:template match="root">
> <html>
> <head>
> <title></title>
> </head>
> <body>
> <xsl:variable name="myDate" select="row/@theDate"/>
> The date is
> <xsl:value-of select="$myDate"/><br/>
>
> <xsl:variable name='var:addDate'
> select='user:mydateadd("d", "15", string($myDate))'/>
> Add 15 days to that date =
> <xsl:value-of select="$var:addDate"/><br/>
> </body>
> </html>
> </xsl:template>
>
> <!-- VB Script function to add to the date -->
> <msxsl:script language='VBScript' implements-prefix='user'>
> <![CDATA[
> Function MyDateAdd(Interval, Number, TheDate)
>
> Dim sumDate
> Dim myDate(2)
>
> sumDate = DateAdd(CStr(Interval), CDbl(Number),
> CDate(TheDate))
>
> ' necessary to do some string manipulation
> because the DateAdd func returns wrong format
> myDate(0) = DatePart("yyyy", CDate(sumDate))
> myDate(1) = DatePart("m", CDate(sumDate))
> If Len(myDate(1)) = 1 Then myDate(1) = "0" & myDate(1)
> myDate(2) = DatePart("d", CDate(sumDate))
> If Len(myDate(2)) = 1 Then myDate(2) = "0" & myDate(2)
> MyDateAdd = Join(myDate, "-")
>
> End Function
> ]]>
> </msxsl:script>
>
> </xsl:stylesheet>
>
> As I said this works fine when using MSXML. However when
> using 'System.Xml.Xsl.XslTransform' an exception is thrown
> when you load the transform document.
> Is this functionality no longer supported in the
> 'System.Xml.Xsl.XslTransform' assembly?
>
>
> Thank you,
> John Aschenbrenner
> Ignition Mortgage Technology Solutions, Inc.
> jaschenbrenner@xxxxxxxxxxxxxxx
> Ph: (253)858-8955 x 239
> http://www.ignitionmts.com
>
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|