Re: [xsl] Sorting by document order of some other element

Subject: Re: [xsl] Sorting by document order of some other element
From: "Eric Bréchemier" <eric.brechemier@xxxxxxxxx>
Date: Mon, 25 Jun 2007 23:59:57 +0200
Hi Peter,

I am not sure to understand this part
the element name is unknown but will match in both sets
but based on provided sample and my fuzzy understanding, it seems like
your problem would be much simpler to solve by actually

- iterating on the first set, where elements are correctly ordered,
- and for each element, copying the value found in the second set
where [replace with your condition, maybe id attribute is
identical...]

Kind Regards,

Eric Brichemier

On 6/25/07, Peter Hunsberger wrote:
Hi everyone,

it's been a couple of years since I've had need to consult with all
the wise guru's here, but I've got a question on a sorting problem
that I can't see a simple answer to at the moment.  Basically, I've
got two sets of elements, the element name is unknown but will match
in both sets.  I would like to walk the second set of elements (via a
for-each) and copy them in the order of the corresponding order of the
first set of identically named elements.  There will be an attribute
(say "id") that will have a one to one correspondence between both
sets of elements  .  Eg:

Input:

<doc>
  <set1>
      <element id="4"/>
      <element id="7"/>
      <element id="1"/>
      <element id="3"/>
      <element id="2"/>
  </set1>
  <set2>
      <element id="1">other stuff a</element>
      <element id="4">other stuff b</element>
      <element id="3">other stuff c</element>
      <element id="2">other stuff d</element>
      <element id="7">other stuff e</element>
  </set2>
</doc>

Desired output:

  <set2>
      <element id="4">other stuff b</element>
      <element id="7">other stuff e</element>
      <element id="1">other stuff a</element>
      <element id="3">other stuff c</element>
      <element id="2">other stuff d</element>
  </set2>

Answers can be restricted to XSLT 2.0....

--
Peter Hunsberger

Current Thread