Nice! I like it!
Anyway, if you want a zip file with some basic (and I mean simple) examples
of XML and XSL with speed testing then you can download them (if you're
lucky) from:
http://www.cfm-resources.com/c/cfdoc/downloads/xslstuff.zip
These again use MSXMLDOM object. Please use them how you wish!
Paul
> -----Original Message-----
> From: Gary Davidson [mailto:[EMAIL PROTECTED]]
> Sent: 09 November 2000 21:35
> To: CF-Talk
> Subject: RE: XML / XSL
>
>
> This is the XSLT tag I wrote for the MS IIS platform and that I use, I am
> sure there is room for improvement.
>
> <cfobject type="COM" name="objXMLdoc" class="microsoft.xmldom"
> action="CREATE">
> <cfobject type="COM" name="objXSLdoc" class="microsoft.xmldom"
> action="CREATE">
>
> <cfscript>
> Err = 0
> XMLdoc = attributes.xml;
> XSLdoc = attributes.xsl;
> objXMLdoc.ValidateOnParse = -1;
> objXSLdoc.ValidateOnParse = -1;
> objXMLdoc.load(XMLdoc);
> If (objXML.parseError.errorCode <> 0)
> Err = 1;
> objXSLdoc.load(XSLdoc);
> If (objXSL.parseError.errorCode <> 0)
> Err = Err + 2;
>
> switch(err)
> {
> case 0:
> {
> Caller.Results = objXMLdoc.transformNode(objXSLdoc);
> break;
> }
> case 1:
> {
> a = objXML.parseError.errorCode;
> b = objXML.parseError.reason;
> Caller.error = true;
> Caller.errorreason = "XML ERROR! Error Code " + a + "
> Description " + b;
> break;
> }
> case 2:
> {
> Caller.error = true;
> a = objXML.parseError.errorCode;
> b = objXML.parseError.reason;
> Caller.error = true;
> Caller.errorreason = "XSL ERROR! Error Code " + a + "
> Description " + b;
> break;
> }
>
> } //end switch
>
> </cfscript>
>
> This is the calling page
>
> <CF_XSLT
> XML="c:\inetpub\wwwroot\OnlineSalesReporting\sample.xml"
> XSL="c:\inetpub\wwwroot\OnlineSalesReporting\sample.xsl"
> >
>
> <cfoutput>#XSLTResults#</cfoutput>
>
>
>
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, November 09, 2000 1:36 PM
> To: CF-Talk
> Subject: RE: XML / XSL
>
>
> Good grief! That's a lot of errors!
>
> It would be nice if there was a custom tag that did the following:
>
> <CF_XSLPROCESS
> XML = "[path]myfile.xml"
> XSL = "[path]myfile.xsl"
> VAR = "nameOfCFVariableToStoreResultIn">
>
> Then you could output the variable
> "nameOfCFVariableToStoreResultIn" to the
> user's browser.
>
> The Lotus version seems to be close to this but requires output to a file
> which means doing a file write and then a read as well as a delete for
> housekeeping purposes. That's very inefficient for page processing.
>
> Any suggestions?
>
> --Doug
>
> -----Original Message-----
> From: David Gassner [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, August 03, 2000 4:17 AM
> To: [EMAIL PROTECTED]
> Subject: RE: XML / XSL
>
>
> To use Lotusxsl for transformations, the classpath in the CF Administrator
> needs to include full paths to these files:
> xalan.jar
> Lotusxsl.jar
>
> For instance:
>
> c:\lotusxsl\lotusxsl.jar;c:\lotusxsl\xalan.jar
>
> As Sean Renet pointed out awhile back, the KB article has some
> fatal errors.
> Here are the fixes you need to apply to get it working:
>
> 1. If you copy the example XSL file from the website, the
> <xsl:stylesheet>
> tag's xmlns:xsl attribute value is broken into 2 lines, causing the xsl
> processor to fail completely. Instead of doing the
> transformation, it just
> outputs the content of the original xsl file. The namespace
> needs to be in
> a continuous line, as follows:
>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>
> 2. The printWriter class isn't being closed, so the file containing the
> wddx isn't being flushed to disk. Add the following to the end
> of the code:
>
> <cfset printWriter.close()>
>
> 3. The resulting processed file isn't being read into a CF variable, so
> add:
>
> <cffile action="read"
> file="[path]wddx_test.wddx"
> variable="wddx">
>
> 4. When you try to run <cfwddx> to transform the wddx to a structure,
> you'll get:
>
> Error Diagnostic Information
> unknown exception condition
> TagCFWddx::execute
>
> There is an error in the XSL file. The "item" element is being
> mapped to a
> named structure. Since it's a structure within an array, it can't take a
> name, causing the WDDX parser to fail. Here's the corrected XSL file:
>
> ************************
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
>
> <!-- Match invoice root & emit WDDX packet wrapper -->
> <xsl:template match="/invoice">
> <wddxPacket version="1.0">
> <header/>
> <data>
> <struct>
> <xsl:apply-templates/>
> </struct>
> </data>
> </wddxPacket>
> </xsl:template>
>
>
> <!-- Process all elements that map to array variables -->
> <xsl:template match="billableHours">
> <var name="{name(.)}">
> <array length="{count(*)}">
> <xsl:apply-templates/>
> </array>
> </var>
> </xsl:template>
>
> <!-- Process all elements that map to struct variables -->
> <xsl:template match="invoice|contractorInfo|address">
> <var name="{name(.)}">
> <struct>
> <xsl:apply-templates/>
> </struct>
> </var>
> </xsl:template>
>
>
> <!--- Process structures inside arrays (no names) - this is the fixed
> structure --->
> <xsl:template match="item">
> <struct>
> <xsl:apply-templates/>
> </struct>
> </xsl:template>
>
> <!-- Process all elements that map to string variables -->
> <xsl:template
> match="firstName|lastName|street|city|state|zip|country|voice|fax|email|
> description|currency">
> <var name="{name(.)}">
> <string>
> <xsl:value-of select="text()"/>
> </string>
> </var>
> </xsl:template>
>
> <!-- Process all elements that map to number variables -->
> <xsl:template match="invoiceID|employeeID|hours|amount">
> <var name="{name(.)}">
> <number>
> <xsl:value-of select="text()"/>
> </number>
> </var>
> </xsl:template>
>
> <!-- Process all elements that map to date-time variables -->
> <xsl:template match="dateSubmitted|date">
> <var name="{name(.)}">
> <string>
> <xsl:value-of select="text()"/>
> </string>
> </var>
> </xsl:template>
>
> </xsl:stylesheet>
>
>
> > -----Original Message-----
> > From: dave fauth [mailto:[EMAIL PROTECTED]]
> > Sent: Wednesday, August 02, 2000 5:32 PM
> > To: [EMAIL PROTECTED]
> > Subject: Re: XML / XSL
> >
> >
> > Cary,
> >
> > It is an Allaire KB:
> >
> > http://www.allaire.com/handlers/index.cfm?ID=14244&Method=Full
> >
> > Also, you may want to check here:
> >
> > http://www.sys-con.com/xml/archives/0102/gassner/index.html
> >
> > dave
> >
> > At 08:28 AM 8/2/00 -0700, you wrote:
> > >What KB article would that be? I searched xml, xsl and lotus and found
> > >nothing like what you mentioned.
> > >
> > >Cary
> > >
> > >At 09:13 AM 8/2/2000 -0400, you wrote:
> > >>Doug,
> > >>
> > >>I'm just getting started in XML/XSL with CF. I've looked at the KB
> > >>article from Allaire on it and have downloaded the Lotus XML parser.
> > >>
> > >>One question I have is how the set the Class Path. The Lotus parser
> > >>documentation isn't really clear on it. It seems like there is
> > a place in
> > >>the CF administrator but there must be another place to do it.
> > Anybody's
> > >>help would be appreciated.
> > >>
> > >>I'm looking to both read XML into WDDX and also convert WDDX
> > into XML via
> > XSL.
> > >>
> > >>What kind of things are you doing with XML?
> > >>
> > >>dave
> > >
> > >-----------------------------------------------------------------
> > ----------
> > ---
> > >Archives: http://www.mail-archive.com/[email protected]/
> > >To Unsubscribe visit
> >
> http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or
> > send a message to [EMAIL PROTECTED] with
> 'unsubscribe' in
> > the body.
> > >
> > >
> > ---------------
> > dave fauth
> > [EMAIL PROTECTED]
> >
> > "The opinions expressed here
> > are my own and not those of
> > DOMAIN technologies, inc."
> > ------------------------------------------------------------------
> > ------------
> > Archives: http://www.mail-archive.com/[email protected]/
> > To Unsubscribe visit
> > http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf
> _talk or send a message to [EMAIL PROTECTED] with
> 'unsubscribe' in the body.
>
> ------------------------------------------------------------------
> ----------
> --
> Archives: http://www.mail-archive.com/[email protected]/
> To Unsubscribe visit
> http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or
> send a message to [EMAIL PROTECTED] with 'unsubscribe' in
> the body.
> ------------------------------------------------------------------
> ----------
> --------------------
> Archives: http://www.mail-archive.com/[email protected]/
> Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
> or send a
> message with 'unsubscribe' in the body to
> [EMAIL PROTECTED]
> ------------------------------------------------------------------
> ------------------------------
> Archives: http://www.mail-archive.com/[email protected]/
> Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists
> or send a message with 'unsubscribe' in the body to
> [EMAIL PROTECTED]
>
------------------------------------------------------------------------------------------------
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists or send a message
with 'unsubscribe' in the body to [EMAIL PROTECTED]