[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

grouping problem

Subject: grouping problem
From: "Whitney, Dan (CanWest Interactive)" <DWhitney@xxxxxxxxxxx>
Date: Mon, 12 Dec 2005 11:12:49 -0500
variable group compensation
Hi am having a little problem with grouping. I want to "clear" the key at
the start of each document element, but am having some trouble figuring out
what I'm doing wrong. Thanks in advance for the help.

Dan

Here's the xsl:

<xsl:stylesheet
     version="2.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output
       method="text"
       encoding="iso-8859-1"
       indent="yes"/>

  <xsl:key name="groupbyposition" match="personnel" use="@group" />

  <xsl:variable name="tab" select="'&#009;'" />
  <xsl:variable name="nl" select="'&#10;'" />


  <xsl:template match="publication">
    <xsl:apply-templates select="document"/>
  </xsl:template>

  <xsl:template match="document">


    <xsl:for-each select="record/personnel[@group and
generate-id(.)=generate-id(key('groupbyposition', @group))]">
      <xsl:sort select="@group" data-type="number" order="ascending"/>
      <xsl:variable name="groups" select="@group"/>

      <xsl:value-of select="$groups"/>
      <xsl:text>****</xsl:text>
      <xsl:value-of select="../personnel[@group=$groups][1]/position"/>
      <xsl:value-of select="$nl"/>
    </xsl:for-each>

    <xsl:value-of select="$nl"/>
  </xsl:template>


<xsl:template match="text()" />
</xsl:stylesheet>

Here's my current output:

6****Chair
7****CFO
26****VP

4****President And CEO

And here's the output I want:

6****Chair
7****CFO
26****VP

4****President And CEO
7****CFO
26****VP


Here's the xml:


<?xml version="1.0" encoding="iso-8859-1"?>

<publication>
<document>
<industry code="12">Consumer Durables &amp; Apparel</industry>
<record fragment="compensation">
<companyname fpid="4754">ADS inc.</companyname>
<date desc="perioddate">20050131</date>
<personnel group="7">
<personname fppid="46241">Guy Birubi</personname>
<compensation desc="salary" rate="1">200850</compensation>
<compensation desc="bonus" rate="1">100425</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">301275</compensation>
<position>CFO</position>
</personnel>
<personnel group="6">
<personname fppid="46231">Paul Drouin</personname>
<compensation desc="salary" rate="1">206000</compensation>
<compensation desc="bonus" rate="1">0</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">206000</compensation>
<position>Chair</position>
</personnel>
</record>
<record fragment="compensation">
<companyname fpid="5174">Algo Group Inc.</companyname>
<date desc="perioddate">20041231</date>
<personnel group="7">
<personname fppid="105376">Sol Chankowsky</personname>
<compensation desc="salary" rate="1">199540</compensation>
<compensation desc="bonus" rate="1">0</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">199540</compensation>
<position>CFO</position>
</personnel>
<personnel group="26">
<personname fppid="49407">Jerry Miller</personname>
<compensation desc="salary" rate="1">358323</compensation>
<compensation desc="bonus" rate="1">0</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">358323</compensation>
<position>VP</position>
</personnel>
<personnel group="26">
<personname fppid="105380">Steve Silverstein</personname>
<compensation desc="salary" rate="1">224000</compensation>
<compensation desc="bonus" rate="1">0</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">224000</compensation>
<position>VP</position>
</personnel>
</record>
</document>
<document>
<industry code="20">Pharmaceuticals</industry>
<record fragment="compensation">
<companyname fpid="29978">AnorMED Inc.</companyname>
<date desc="perioddate">20050331</date>
<personnel group="4">
<personname fppid="95859">Michael Abrams</personname>
<compensation desc="salary" rate="1">376250</compensation>
<compensation desc="bonus" rate="1">155925</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">532175</compensation>
<position>President And CEO</position>
</personnel>
<personnel group="26">
<personname fppid="128149">Tony Hesby</personname>
<compensation desc="salary" rate="1">142500</compensation>
<compensation desc="bonus" rate="1">20000</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">162500</compensation>
<position>VP</position>
</personnel>
<personnel group="7">
<personname fppid="95868">William Adams</personname>
<compensation desc="salary" rate="1">209888</compensation>
<compensation desc="bonus" rate="1">64828</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">274716</compensation>
<position>CFO</position>
</personnel>
<personnel group="26">
<personname fppid="-18014">Paul Brennan</personname>
<compensation desc="salary" rate="1">214240</compensation>
<compensation desc="bonus" rate="1">56514</compensation>
<compensation desc="other" rate="1">0</compensation>
<compensation desc="total">270754</compensation>
<position>VP</position>
</personnel>
</record>
</document>
</publication>

Current Thread
  • grouping problem
    • Whitney, Dan (CanWest Interactive) - 12 Dec 2005 16:13:05 -0000 <=

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.