Subject: RE: [xsl] dynamic document() template problem From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Mon, 20 Jun 2005 20:42:10 +0100 |
Curly braces are never used within an XPath expression: they are only used when an XPath expression is embedded in text within an attribute value template. In standard XSLT, you can't construct an XPath expression dynamically from a string, or interpret an XPath expression held in a source document. However, Saxon (and some other products) have an extension to do this: <xsl:apply-templates select="document(@href)/Document/saxon:evaluate-node(current()/@nodes))"/> (This is Saxon 8.4) (You'll see saxon:evaluate() more often than saxon:evaluate-node(). The main difference is that evaluate-node() takes namespace prefixes from the namespace context in the source document, not from the namespace context in the stylesheet.) Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Arian Hojat [mailto:arianhojat2000@xxxxxxxxx] > Sent: 20 June 2005 20:30 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] dynamic document() template problem > > Hello i am trying to base a template rule off an > attribute in my XML to which chooses nodes to apply > > ###my XML### > <include href="fbackground.xml" > nodes="fb/section1/*"/> > > ###my rule for <include>### > <xsl:apply-templates > select="document(@href)/Document/{@nodes}"/> > > but i get an error with Saxon... > [ERROR] > javax.xml.transform.TransformerConfigurationException: > javax.xml.transform.TransformerException: > javax.xml.transform.TransformerException: A location > step was expected following the '/' or '//' token. > without the {}, i know it will just check to see if it > has an attrbiute, but i would like it to get > intrepeted to > 'document(fbackground)/Document/fb/section1/*' > > > > > ____________________________________________________ > Yahoo! Sports > Rekindle the Rivalries. Sign up for Fantasy Football > http://football.fantasysports.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] dynamic document() templa, David Carlisle | Thread | Re: [xsl] dynamic document() templa, JBryant |
Re: [xsl] dynamic document() templa, JBryant | Date | Re: [xsl] dynamic document() templa, JBryant |
Month |