Subject: RE: [xsl] Converting <xml> StyleSheet param contents into a node set? From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 17 Aug 2005 08:44:46 +0100 |
If the parameter arrives as unparsed XML, then at some stage it's going to have to be parsed into a tree. You can do that in the application before invoking the stylesheet, or you can do it by a call-out from the stylesheet to some kind of extension (in Saxon you could use saxon:parse()). I can't tell from your description which is likely to be more convenient in your case. One approach would be to do it in a URIResolver triggered by the document() function, but I don't know if that's appropriate in Xalan-C. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Jacquo Johnson [mailto:genxgeek@xxxxxxxxx] > Sent: 17 August 2005 08:06 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: [xsl] Converting <xml> StyleSheet param contents > into a node set? > > Thanks for the reply, Michael! The XSLT version is 1.0 and I'm using > Xalan v1.5 or v1.6 of the C/C++ for this specific application > solution. I'm testing the raw transform itself via JEdit using the > lastest build of the XSLT plugin for Xalan Java (not sure what version > that is). > > However, I would like to avoid any disk i/o or uri specification for > this solution due to high message volume and fault tolerance. Since I > recieve the xml filter specification within a Xerces Dom Document as > passed from a server I would like to take the filter xml contents and > pass it into an existing stylesheet as xml contents > <Filter>....</Filter> itself. This is all happening on the client > side in mememory and the only way that I can think of adhering to this > requirement is parsing the filtered xml node xml contents into an > existing stylesheet as a parameter. > > Thoughts? > > On 8/17/05, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > The way you pass parameters to a stylesheet depends on the > API of the XSLT > > processor that you are using. Many will allow you to pass a > DOM Document > > node. > > > > If you're using Saxon from the command line, the parameter > > +Filter=filter.xml causes the file filter.xml to be parsed, and the > > resulting document (root) node becomes the value of the parameter. > > > > Another approach is to pass the URI as the stylesheet > parameter, and then > > call document() from within the stylesheet. > > > > Michael Kay > > http://www.saxonica.com/ > > > > > -----Original Message----- > > > From: Jacquo Johnson [mailto:genxgeek@xxxxxxxxx] > > > Sent: 17 August 2005 02:07 > > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > > Subject: [xsl] Converting <xml> StyleSheet param contents > > > into a node set? > > > > > > HI all, can somebody tell me how I can pass <xml> contents into a > > > stylesheet param and then convert that <xml> contents > into a nodeset? > > > > > > > > > Stylesheet: ( Filter=<Node><Whatever/></Node> ) > > > ... > > > <xsl:param name="Filter" select="string('NULL')" /> > > > > > > <xsl:copy-of select="$Filter"/> > > > ... > > > Output: > > > <Node><Whatever/></Node> > > > > > > However, I want to turn the xml contents above into a > node set that I > > > can later use in the transform. Is that possible (is > there something > > > other than using CDATA)? > > > > > > Any information would be greatly appreciated.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Converting <xml> StyleShe, Jacquo Johnson | Thread | Re: [xsl] Converting <xml> StyleShe, Jacquo Johnson |
Re: [xsl] Converting <xml> StyleShe, Jacquo Johnson | Date | [xsl] How to create file structure , anton |
Month |