|
Subject: RE: [xsl] for-each loop in node set variable gives error - RTF traversal error From: "Ranjan K. Baisak" <ranjanbaisak@xxxxxxxxx> Date: Thu, 2 Sep 2004 22:15:21 -0700 (PDT) |
Michael,
You are right. I just went through w3c.org
which states clearly that you cannot use /,// and []
with RTF. I am using XSLT1.0 and as per your
suggestion to use xsl:node-set() and it works fine
with XMLSpy but when I am trying to run in Stylus
Studio, it gives bunch of exception.
Exception calling Java extension: ;
java.lang.ClassNotFoundException:
http://www.w3.org/1999/XSL/Transform; at
com.exln.stylus.CXClassLoader.findClass(CXClassLoader.java:192);
at java.lang.ClassLoader.loadClass(Unknown Source);
at
com.exln.stylus.CXClassLoader.loadClass(CXClassLoader.java:234);
at java.lang.ClassLoader.loadClass(Unknown Source);
-----
But anyway it works
Thanks a lot.
regards,
Ranjan
--- Michael Kay <mhk@xxxxxxxxx> wrote:
> Your variable $employeeList is a result tree
> fragment and XSLT 1.0 does not
> allow you to use an RTF in a path expression. You
> need the xx:node-set()
> extension function, or an XSLT 2.0 processor, or an
> XSLT 1.0 processor that
> relaxes this rule.
>
> Michael Kay
> http://www.saxonica.com/
>
> P.S. You might not be able to make sense of the
> error message, but there are
> many people on this list who can, and who would be
> able to answer your
> question more quickly if you quoted it.
>
>
> > -----Original Message-----
> > From: Ranjan K. Baisak
> [mailto:ranjanbaisak@xxxxxxxxx]
> > Sent: 02 September 2004 14:35
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: [xsl] for-each loop in node set variable
> gives error
> >
> > Hello List,
> > My stylesheet contains following
> > declarations
> >
> > declaration 1:
> > <xsl:variable name="employeeList">
> > <xsl:for-each
> select="//employee/*[name()!='max']">
> > <xsl:if test="count(key('employee', @id))=0">
> > <xsl:copy>
> > <xsl:copy-of
> > select="property[@name='cast']/@val"/>
> > <xsl:copy-of select="@name"/>
> > <xsl:copy-of
> > select="property[@name='language']"/>
> > </xsl:copy>
> > </xsl:if>
> > </xsl:for-each>
> > </xsl:variable>
> >
> > declaration 2:
> > <xsl:variable name="generatedEmployees">
> > <xsl:for-each select="$employeeList/*">
> > <xsl:sort select="@val"/>
> > <xsl:copy-of select="."/>
> > </xsl:for-each>
> > </xsl:variable>
> >
> > for-each loop for $employeeList/* in declaration 2
> > gives error. I don't understand why it gives
> error.
> > Any clue?
> >
> > regards,
> > Ranjan
> >
> >
> >
> > _______________________________
> > Do you Yahoo!?
> > Win 1 of 4,000 free domain names from Yahoo! Enter
> now.
> > http://promotions.yahoo.com/goldrush
>
>
_______________________________
Do you Yahoo!?
Win 1 of 4,000 free domain names from Yahoo! Enter now.
http://promotions.yahoo.com/goldrush
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] FW: result-document output fi, Damian.Clark | Thread | RE: [xsl] for-each loop in node set, Ranjan K. Baisak |
| [xsl] FW: result-document output fi, Damian.Clark | Date | Re: [xsl] Check for text between tw, Josh Canfield |
| Month |