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

RE: XSL Processing to avoid repetitions

Subject: RE: XSL Processing to avoid repetitions
From: "Fabien Tillier" <f.tillier@xxxxxxxx>
Date: Wed, 16 Jun 2010 15:36:47 +0200
RE:  XSL Processing to avoid repetitions
Andrew, You are probably right, I came to nowhere....
Thanks also to David for is nearly as fast answer :)

So, I have these data

<?xml version="1.0" encoding="UTF-8"?>
<Results>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-1</CODE>
    <NUMERO>110</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-1</CODE>
    <NUMERO>567</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-1</CODE>
    <NUMERO>936</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-2</CODE>
    <NUMERO>110</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-2</CODE>
    <NUMERO>567</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
    <CONTRACT>1000</CONTRACT>
    <CODE>1000-2</CODE>
    <NUMERO>936</NUMERO>
    <STATE>0</STATE>
  </Row>
  <Row>
</Results>

And I would like to reshape the data to get something clean (from CONTRACT,
CODE and NUMERO)
1000
	1000-1
		110
		567
		936
	1000-2
		110
		567
		936
1001
	1001-1
		150
^1001 contract is not shown here but can in the rest of the XML...

Thanks a lot in advance
PS: Fields are supposed to be ordered already....

-----Message d'origine-----
De : Andrew Welch [mailto:andrew.j.welch@xxxxxxxxx]
Envoyi : mercredi 16 juin 2010 15:23
@ : xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Objet : Re:  XSL Processing to avoid repetitions

On 16 June 2010 14:15, Fabien Tillier <f.tillier@xxxxxxxx> wrote:
> Hi List.
> I was wondering if anyone could help me to filter out data in an XML
stream.
> (can be xslt 2.0...)
>
> For example, I have
> <xml>
>       <city>
>             <name>Paris</name>
>             <person>Paul</person>
>       </city>
>       <city>
>             <name>New-York</name>
>             <person>John</person>
>       </city>
>       <city>
>             <name>Paris</name>
>             <person>George</person>
>       </city>
> </xml>
>
> I would like to have an XSL template able to output something like (using
<OL> for example) Paris
>       Paul
>       George
> New-York
>       John

Use xsl:for-each-group to select <city> and group by <name>, and
within that use current-grouping-key() to get place and then for-each
over the current-group() to get each name.

> (please note that the real structure is more complicated, and the filter is
to be done on more than one level...)

...in which case its probably best to post a complete sample.


--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

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.