[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] re-ordering nodes/partial sort


Subject: [xsl] re-ordering nodes/partial sort
From: "Kevin Bird" <kevin.bird@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 10 Oct 2004 16:16:35 +0100

Hi

In the following structure I can receive 1 or many <supp> nodes. Some of
the <supp> nodes need re-arranging depending on their <supp-desc>. The
order is: Bed &amp; Breakfast, Bed &amp; Breakfast (child), Half Board,
Half Board (child), Full Board and Full Board (child). Any <supp> with a
<supp-desc> that is not one of the above appear before them in the
output.

Any suggestions would be greatly appreciated.

--INPUT--

<supplements>
	<supp>
		<supp-desc>Sea View</supp-desc>
		<supp-price>10.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Half Board</supp-desc>
		<supp-price>30.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Bed &amp; Breakfast</supp-desc>
		<supp-price>4.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Full Board</supp-desc>
		<supp-price>60.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Half Board (child)</supp-desc>
		<supp-price>15.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Full Board (child)</supp-desc>
		<supp-price>30.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Bed &amp; Breakfast (child)</supp-desc>
		<supp-price>2.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Balcony</supp-desc>
		<supp-price>8.00</supp-price>
	</supp>
</supplements>

--REQUIRED OUTPUT--

<supplements>
	<supp>
		<supp-desc>Sea View</supp-desc>
		<supp-price>10.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Balcony</supp-desc>
		<supp-price>8.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Bed &amp; Breakfast</supp-desc>
		<supp-price>4.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Bed &amp; Breakfast (child)</supp-desc>
		<supp-price>2.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Half Board</supp-desc>
		<supp-price>30.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Half Board (child)</supp-desc>
		<supp-price>15.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Full Board</supp-desc>
		<supp-price>60.00</supp-price>
	</supp>
	<supp>
		<supp-desc>Full Board (child)</supp-desc>
		<supp-price>30.00</supp-price>
	</supp>
</supplements>

Thanks.

--
Kevin


Current Thread