Subject: RE: [xsl] dynamic document() template problem (with Xalan) From: Arian Hojat <arianhojat2000@xxxxxxxxx> Date: Tue, 21 Jun 2005 07:24:35 -0700 (PDT) |
Hey, I was wondering if I could use dyn:evaluate just the same? Just because I am using just Fop (1 step of providing the xml/xsl files), rather than pipe through Saxon, then Fop. Unless theres a way to access saxon extensions while still using Xalan. I have access to the EXSLT dyn:evaluate() function... I tried doing something using this to no avail. <xsl:apply-templates select="document(@href)/Document/dyn:evaluate(current()/@nodes)"/> Extra illegal tokens: '(', 'current', '(', ')', '/', '@', 'nodes', ')' --- Michael Kay <mike@xxxxxxxxxxxx> wrote: > 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 > > ____________________________________________________ Yahoo! Sports Rekindle the Rivalries. Sign up for Fantasy Football http://football.fantasysports.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] xsl:include href - relati, Joe Fawcett | Thread | Re: [xsl] dynamic document() templa, James Fuller |
[xsl] xsl:include href - relative t, Hardy Merrill | Date | Re: [xsl] dynamic document() templa, James Fuller |
Month |