xsl-list
[Top] [All Lists]

AW: select 1st occurence of element tag name

2004-02-15 08:34:15
Sadly your solution didn't work. Maybe I did something wrong. How would
you integrate the html output in your solution when the output should
look like this:

For the 1st example:
<table>
        <tr>
                <th>firstname</th>
                <th>lastname</th>
                <th>author</th>
                <th>employee</th>
        <tr>
</table>

For the 2nd example:
<table>
        <tr>
                <th>title</th>
                <th>date</th>
                <th>abstract</th>
                <th>rating</th>
                        ...
        <tr>
</table>

And as I described all processed by the same XSL file.Sorry for my
nescience ;-)

Best regards,
Nick


|-----Ursprüngliche Nachricht-----
|Von: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com [mailto:owner-xsl-
|list(_at_)lists(_dot_)mulberrytech(_dot_)com] Im Auftrag von J.Pietschmann
|Gesendet: Sonntag, 15. Februar 2004 12:51
|An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
|Betreff: Re: [xsl] select 1st occurence of element tag name
|
|Nikolas Nehmer wrote:
|> What
|> I need is a select construct which selects the first occurence of an
|> element tag name (tag name is not fixed) for all direct children of
the
|> root.
|
|Sounds like a grouping problem. There are several approaches,
|I think Muenchean grouping is the simplest way here:
|
|  <xsl:key name="name" match="/*/*" use="name()"/>
|
|  <xsl:template match="/*">
|    <xsl:apply-templates select="*[generate-id()=
|      generate-id(key('name',name())[1])]/>
|  </xsl:template>
|
|See Jeni's page and the XSL FAQ for more hints:
|  http://www.jenitennison.com/xslt/grouping/index.html
|
|
|J.Pietschmann
|
| XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


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