Re: [xsl] Collecting sibling nodes under groupings

Subject: Re: [xsl] Collecting sibling nodes under groupings
From: "Mark Wilson" <drmark@xxxxxxxxxxxxxxx>
Date: Thu, 12 Jan 2006 09:44:42 -0500
Hello Michael,
Using real data in an XML fragment, my output would look like:

<SubjectList>
   <Subject>Cats
       <Title>All about Cats</Title>
       <Title>Wildcats I have known</Title>
   </Subject>
   <Subject>Dogs
       <Title>The Dog Lovers handbook</Title>
       <Title>Dogs of the American West</Title>
   </Subject>
</SubjectList>

from the original XML:

<EntryList>
   <Entry>
       <Subject>Cats</Subject>
       <Title>All about Cats>
   </Entry>
   <Entry>
       <Subject>Cats</Subject>
       <Title>Wildcats I have known</Title>
   </Entry>
   <Entry>
       <Subject>Dogs</Subject>
        <Title>The Dog Lovers handbook</Title>
   </Entry>
   <Entry>
       <Subject>Dogs</Subject>
       <Title>Dogs of the American West</Title>
   </Entry>
</EntryList>

I hope this is clearer.
Mark

----- Original Message ----- From: "Michael Kay" <mike@xxxxxxxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Thursday, January 12, 2006 9:17 AM
Subject: RE: [xsl] Collecting sibling nodes under groupings



It's not clear to me what "Some subjects" is. Is this a list of subjects, if
so what form does it take? Are you trying to get a single entry grouped
under more than one subject?


Michael Kay
http://www.saxonica.com/

-----Original Message-----
From: Mark Wilson [mailto:drmark@xxxxxxxxxxxxxxx]
Sent: 12 January 2006 13:17
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] Collecting sibling nodes under groupings

It was suggested that I resubmit my question with a more
specific subject
line.

I am building a library catalog for my club. I put each
book's description
in an XML sequence like (but simplified)
<List>
    <Entry>
        <Subject>Some Subjects</Subject>
        <Title>Some Title</Title>
        <Publisher>Some Publisher</Publisher>
    </Entry>
    .......
</List>

Using Saxon 8, I then did a grouping using XSLT 2.0's new
grouping element
so that I get a list of all the subjects, but only a single
entry for each.
Now I want to create:
<List>
    <Subject>First Subject
        <Title> First title associated with this subject</Title>
            <Publisher>Publisher associated with this
title</Publisher>
        <Title> Next title associated with this subject</Title>
             <Publisher>Publisher associated with this
title</Publisher>
    </Subject>
    .....
</List>
More to the point, I want to collect all of the sibling nodes
from an entry
with all of the sibling nodes from other entries that share
the same subject
value. I have really looked and just failed to understand
what I am looking
at. The examples appear to show how to collect attributes,
but not how to
collect sibling nodes. My attemps have all failed.
Thanks,
Mark

Current Thread