This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Unique headers


Hi there

Following is a sample XML file

<MoviesList>
  <Movie>
    <Type>General</Type>
    <Title>Chocolat</Title>
  </Movie>
  <Movie>
    <Type>General</Type>
    <Title>Billy</Title>
  </Movie>
  <Movie>
    <Type>Mystery</Type>
    <Title>Ellen Brokovich</Title>
  </Movie>
  <Movie>
    <Type>Mystery</Type>
    <Title>Pelican Brief</Title>
  </Movie>
  <Movie>
    <Type>Horror</Type>
    <Title>Nightmare on Elm Street</Title>
  </Movie>
  <Movie>
    <Type>Horror</Type>
    <Title>Blair Witch Project</Title>
  </Movie>
  <Movie>
    <Type>General</Type>
    <Title>The Emperor's Groove</Title>
  </Movie>
  <Movie>
    <Type>General</Type>
    <Title>Toy Story</Title>
  </Movie>
</MoviesList>

And I want the output to be as follows -

Chocolat
Billy
Mystery
  Ellen Brokovich
  Pelican Brief
Horror
  Nightmare on Elm Street
  Blair Witch Project
The Emperor's Groove
Toy Story

My XSL file looks like this :-

<xsl:variable name="grpTypes" select="'Mystery Horror'"/>
<xsl:template match="text()"/>
 <xsl:template match="Type">
   <xsl:choose>
     <xsl:when test="contains($grpTypes, concat(' ', .))">
       <xsl:if test="not(. = preceding::Type)">
         <xsl:value-of select="concat(., '&#xA;')"/>
       </xsl:if>
       <xsl:value-of select="../Title"/>
     </xsl:when>
     <xsl:otherwise>
       <xsl:value-of select="../Title"/>
     </xsl:otherwise>
   </xsl:choose>
   <xsl:text>&#xA;</xsl:text>
 </xsl:template>

But the output I get it is :-

Chocolat
Billy
Mystery
  Ellen Brokovich
Mystery
  Pelican Brief
Horror
  Nightmare on Elm Street
Horror
  Blair Witch Project
The Emperor's Groove
Toy Story

Any ideas on how to get this done correctly?  Thanks in advance.
Kanthi


_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]