RE: [xsl] How do you select all unique first-position characters?

Subject: RE: [xsl] How do you select all unique first-position characters?
From: Jeff Beadle <Jbeadle@xxxxxxxx>
Date: Thu, 21 Nov 2002 09:42:17 -0500
Wendell,

I tried your approach and the xpath returned me all of the person elements.

I then realized that the @name param to your xsl:key call needs to wrapped
within a substring:

//person[count(.|key('person-by-initial', substring(@name,1,1))[1]) = 1]

which is, by the definition of your xsl:key, I'm sure what you meant to do.

-Jeff

-----Original Message-----
From: Wendell Piez [mailto:wapiez@xxxxxxxxxxxxxxxx]
Sent: Wednesday, November 20, 2002 6:22 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] How do you select all unique first-position
characters?


I should think a key using the initial letter of each name would be a big
help:

<xsl:key name="person-by-initial" match="person"
use="substring(@name,1,1)"/>

Then "key('person-by-initial', 'A')" would get you back the elements for 
Anthony, Amy and the other Amy, and "key('person-by-initial', 'A')[1]" 
would get you just Anthony.

//person[count(.|key('person-by-initial', @name)[1]) = 1] gets you all 
person elements that are first with their initial.

In other words, the usual grouping stuff.

Cheers,
Wendell

(At 04:50 PM 11/20/2002, Greg wrote:
>At 01:36 PM 11/20/2002, you wrote:
>><report-data>
>>         <person name="Anthony" />
>>         <person name="Amy" />
>>         <person name="Amy" />
>>         <person name="Jim" />
>>         <person name="Jason" />
>></report-data>
>>
>>I would expect to get A,J from the above XML
>
>   Here's most of it for you.  I'm having trouble with the initial 
> variable selection though.  I'm hoping somebody can take it from here, as 
> I'm stumped now too....


======================================================================
Wendell Piez                            mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
   Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread