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

Re: Ordered Records

Subject: Re: Ordered Records
From: "Stefano Bonnin" <shpr@xxxxxxxxx>
Date: Mon, 11 Feb 2002 14:33:26 +0100
bonnin
I'am sorry ... don't read my previous e-mail
The solution presented is ok
Thanks to everybody.

----- Original Message -----
From: "Stefano Bonnin" <shpr@xxxxxxxxx>
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Sent: Monday, February 11, 2002 1:03 PM
Subject: Re:  Ordered Records


> Thanks but I have a problem:
>
> Did you try your solution (I think not)
>
> The function position() returns the child position relatively to his
parent.
> So, if I try your solution with the following xml document:
>
> <document>
>     <record-set>
>         <record> <number>10</number><record>
>         <record><number>9</number><record>
>         <record><number>8</number><record>
>         <record><number>7</number><record>
>         <record><number>6</number><record>
>         <record><number>5</number><record>
>         <record><number>4</number><record>
>         <record><number>3</number><record>
>         <record><number>2</number><record>
>         <record><number>1</number><record>
>     <record-set>
>     <record-set>
>         <record> <number>20</number><record>
>         <record><number>19</number><record>
>         <record><number>18</number><record>
>         <record><number>17</number><record>
>         <record><number>16</number><record>
>         <record><number>15</number><record>
>         <record><number>14</number><record>
>         <record><number>13</number><record>
>         <record><number>12</number><record>
>         <record><number>11</number><record>
>     <record-set>
> </document>
>
> I get all 20 records (ordered) because position() returns always a number
<
> 11.
>
> This is valid for all other solutions that the list gave me a few days
ago.
>
>
> Thanks.
>
>
> ----- Original Message -----
> From: "ronald heller" <ronald@xxxxxxxxxxx>
> To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
> Sent: Monday, February 04, 2002 1:04 PM
> Subject: Re:  Ordered Records
>
>
> > It's reaaly not that hard with XSLT :-)
> >
> > ok an example:
> >
> > so lots of records throughout the XML, you want only to show the
smallest
> 10.
> >
> > Based on your XML I created a little example.
> > First sort your records from small to big, then only do something with
the
> > first 10.
> >
> > Cheers
> > RH
> >
> > XSLT:
> > <?xml version="1.0"?>
> > <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
> >
> >     <xsl:template match="/">
> >        <xsl:apply-templates select="//record">
> >           <xsl:sort select="number" data-type="number" />
> >        </xsl:apply-templates>
> >     </xsl:template>
> >
> >     <xsl:template match="record">
> >
> >        <xsl:choose>
> >           <xsl:when test="position() &lt; 11">
> >              <record>
> >                 <xsl:comment>position = <xsl:value-of
select="position()"
> > /></xsl:comment>
> >                 <xsl:apply-templates select="number" />
> >              </record>
> >           </xsl:when>
> >           <xsl:otherwise>
> >              <xsl:comment>at least 10 records have smaller
> > numbers</xsl:comment>
> >           </xsl:otherwise>
> >        </xsl:choose>
> >
> >     </xsl:template>
> >
> >     <xsl:template match="number">
> >        <number>
> >           <xsl:apply-templates />
> >        </number>
> >     </xsl:template>
> >
> > </xsl:stylesheet>
> >
> > XML
> > <document>
> >     <record-set>
> >        <record>
> >           <number>100</number>
> >        </record>
> >
> >        <record>
> >           <number>5</number>
> >        </record>
> >
> >        <record>
> >           <number>102</number>
> >        </record>
> >
> >        <record>
> >           <number>51</number>
> >        </record>
> >
> >        <record>
> >           <number>101</number>
> >        </record>
> >
> >        <record>
> >           <number>52</number>
> >        </record>
> >
> >        <record>
> >           <number>12</number>
> >        </record>
> >
> >        <record>
> >           <number>15</number>
> >        </record>
> >     </record-set>
> >
> >     <record-set>
> >        <record>
> >           <number>19</number>
> >        </record>
> >
> >        <record>
> >           <number>29</number>
> >        </record>
> >
> >        <record>
> >           <number>10</number>
> >        </record>
> >
> >        <record>
> >           <number>19</number>
> >        </record>
> >
> >        <record>
> >           <number>291</number>
> >        </record>
> >
> >        <record>
> >           <number>30</number>
> >        </record>
> >
> >        <record>
> >           <number>99</number>
> >        </record>
> >
> >        <record>
> >           <number>59</number>
> >        </record>
> >
> >        <record>
> >           <number>10</number>
> >        </record>
> >     </record-set>
> > </document>
> >
> > HTML:
> > <record>
> > <!--position = 1-->
> >     <number>5</number>
> > </record>
> >
> > <record>
> > <!--position = 2-->
> >     <number>10</number>
> > </record>
> >
> > <record>
> > <!--position = 3-->
> >     <number>10</number>
> > </record>
> >
> > <record>
> > <!--position = 4-->
> >     <number>12</number>
> > </record>
> >
> > <record>
> > <!--position = 5-->
> >     <number>15</number>
> > </record>
> >
> > <record>
> > <!--position = 6-->
> >     <number>19</number>
> > </record>
> >
> > <record>
> > <!--position = 7-->
> >     <number>19</number>
> > </record>
> >
> > <record>
> > <!--position = 8-->
> >     <number>29</number>
> > </record>
> >
> > <record>
> > <!--position = 9-->
> >     <number>30</number>
> > </record>
> >
> > <record>
> > <!--position = 10-->
> >     <number>51</number>
> > </record>
> >
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> > <!--at least 10 records have smaller numbers-->
> >
> >
> >
> > At 12:37 PM 2/4/02 +0100, you wrote:
> > >Hi,
> > >
> > >I have the following XML document:
> > >
> > ><record-set>
> > ><record>
> > >     <number>N1</number>
> > ></record>
> > >:
> > >:
> > >:
> > >:
> > ><record>
> > >     <number>Nn</number>
> > ></record>
> > ></record-set>
> > >:
> > >:
> > >:
> > ><record-set>
> > ><record>
> > >     <number>M1</number>
> > ></record>
> > >:
> > >:
> > >:
> > >:
> > ><record>
> > >     <number>Mn</number>
> > ></record>
> > ></record-set>
> > >
> > >In each record-set the records are ordinated (the first has the
smallest
> > >number, the last has the bigger number).
> > >I'd like to take, between all record-set, only the 10 records with
> smallest
> > >number and print them on the screen.
> > >
> > >Can I do this with XSL? How?
> > >
> > >Somebody, if possible, can give me an hint for this problem?
> > >
> > >Thanks in advance.
> > >
> > >Stefano
> > >
> > >
> > >
> > >
> > >---
> > >Outgoing mail is certified Virus Free. (CopyRight FLASHH!)
> > >Checked by AVG anti-virus system (http://www.grisoft.com).
> > >Version: 6.0.320 / Virus Database: 179 - Release Date: 30/01/02
> > >
> >
> >
> >  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> >
>
>
> ---
> Outgoing mail is certified Virus Free. (CopyRight FLASHH!)
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.323 / Virus Database: 180 - Release Date: 08/02/02
>
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
>


---
Outgoing mail is certified Virus Free. (CopyRight FLASHH!)
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.323 / Virus Database: 180 - Release Date: 08/02/02


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


Current Thread

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.