RE: passing a string as a node list
I've moved to Xalan 2.1.0 and something strainge has happened.... I set the parameter in a servlet (as before) with transformer.setParameter( "keywords", keywords ); and (as before) I check the value in the style sheet by doing keywords = <xsl:value-of select="$keywords"/> but with the new version, the value-of returns nothing. I've tried it with other style sheets that have not been touched and were working, none of the parameters are being seen by the xsl. All sytle sheets that use parameters are broken! Does Xalan 2.1.0 have a different way of seeing variables than version 2.0.0, or is this a feature? Thanks, Tim. > Hi, > > I know it works with Xalan-J 2_0_1 and I am using it successfully. Here is a > snippet of XSL code you may need to implement it. > > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:xalan="http://xml.apache.org/xalan" > exclude-result-prefixes="xalan"> > <xsl:template name="paramproc"> > <xsl:param name="evalparam"/> > <!-- change context node --> > <xsl:for-each select="$chandoc"> > '<xsl:value-of select="normalize-space(xalan:evaluate ($evalparam))" > />' > </xsl:for-each> > </xsl:template> > > </xsl:stylesheet> > > Saxon also has the same extension function called evaluate which in fact was > implemented earlier. Depends which processor you choose to use. Hope this > helps. > > Maulik Modi > mmodi@xxxxxxxxxx > > > -----Original Message----- > From: Tim [mailto:xsl@xxxxxxxxxxxxxx] > Sent: Thursday, June 21, 2001 11:35 AM > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: passing a string as a node list > > > Ta, Tom. > > I've found mention of the xalan:evaluate() extention a few times but > the xml.apache.org says it's not implemented yet. Anyone know if it's > been done in the CVS? > > Thanks, Tim. > > > Standard xslt does not let you convert a result-tree-fragment (or a > string) > > into a node-set. Some processors (like SAXON) have an extension > function > > that does let you do it. Xalan (which I think you meant instead of > Xerces) > > also has one (I think, someone else would know for sure). How you > invoke > > the extension function is different from one processor to another, so > you > > have to read Mike Kay's book, the docs for your processor, or search > in the > > FAQs. Actually, I'm not sure if you could convert a string anyway, > but you > > can probably change your stylesheet to make it work. > > > > Cheers, > > > > Tom P > > > > [Tim] > > > > > If I use the $keywords variable directly, Xerces throws the > exception > > > saying "Can not convert #STRING to a NodeList" so I've been trying > > > various methods of turning the string into the node list. > > > > > > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl- list > > > > > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format