Subject: Re: [xsl] Getting a specific element count from a generic match From: "Spencer Tickner" <spencertickner@xxxxxxxxx> Date: Mon, 10 Apr 2006 07:02:09 -0800 |
Hi Michael, When using the Saxon api the error message I'm getting back is "Failed to compile stylesheet. 1 error detected". Figuring this wasn't quite enough info to go on I ran it through stylus with Saxon 8.1.1, I get "Required type of first argument of name() is node(); supplied value has type xdt:anyAtomicType" on line 11 below: When I change line 5 to <xsl:variable name="namelist" select="//*[not(name() = following::*/name())]"/> I still get an error through Stylus, but it runs fine through .net. 1 <?xml version="1.0" encoding="utf-8"?> 2 <xsl:stylesheet version="2.0" 3 x mlns:xsl="http://www.w3.org/1999/XSL/Transform"> 4 5 <xsl:variable name="namelist" select="distinct-values(//*/node-name())"/> 6 7 <xsl:variable name="root" select="/"/> 8 9 <xsl:template match="/"> 10 <xsl:for-each select="$namelist"> 11 <xsl:variable name="thisname" select="name()"/> 12 <name value="{$thisname}" count="{count($root//*[name() = $thisname])}"/> 13 </xsl:for-each> 14 </xsl:template> 15 16 </xsl:stylesheet> On 4/7/06, Jay Bryant <jay@xxxxxxxxxxxx> wrote: > Good one, Mike, and thanks for reminding me about distinct-values(). > > Jay Bryant > Bryant Communication Services > > ----- Original Message ----- > From: "Michael Kay" <mike@xxxxxxxxxxxx> > To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> > Sent: Friday, April 07, 2006 3:13 PM > Subject: RE: [xsl] Getting a specific element count from a generic match > > > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > > <xsl:stylesheet version="2.0" > > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > > > > > > <xsl:variable name="namelist" select="//*[not(name() = > > > following::*/name())]"/> > > > > > > > We're talking 2.0 here: you can get all the distinct names using > > > > select="distinct-values(//*/node-name())" > > > > That's O(n log n) rather than O(n^2), and it's also namespace-aware. > > > > Michael Kay > > http://www.saxonica.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Getting a specific elemen, Jay Bryant | Thread | RE: [xsl] Getting a specific elemen, Michael Kay |
RE: [xsl] Saxon, Michael Kay | Date | [xsl] xsltproc and multiple input f, Eric White |
Month |