xsl-list
[Top] [All Lists]

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

2002-11-21 07:42:17
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(_at_)mulberrytech(_dot_)com]
Sent: Wednesday, November 20, 2002 6:22 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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(_at_)mulberrytech(_dot_)com
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