This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
merging unknown nodes
- To: <xsl-list at mulberrytech dot com>
- Subject: merging unknown nodes
- From: "Jon Payne" <Jon dot Payne at ttpcom dot com>
- Date: Wed, 1 Nov 2000 10:02:51 -0400 (EST)
- Reply-To: xsl-list at mulberrytech dot com
I'm new to XSL(T) and so far I have not been able to think of a way of
achieving the required transform using XSLT and I think I'm going to have to
result to using some JavaScript or may be some plain old C code :-(
What I want to be able to do is transform this:
<PRODUCTS>
<PRODUCT name="bill_product">
<OPTIONLIST name="fred"> <!-- The first 'fred' option list -->
<OPTION>fred1</OPTION>
<OPTION>fred2</OPTION>
</OPTIONLIST>
<OPTIONLIST name="george">
<OPTION>george1</OPTION>
</OPTIONLIST>
</PRODUCT>
<PRODUCT name="bob_product">
<OPTIONLIST name="fred"> <!-- The second 'fred' optionlist -->
<OPTION>fred3</OPTION>
<OPTION>fred4</OPTION>
</OPTIONLIST>
<OPTIONLIST name="george">
<OPTION>george2</OPTION>
</OPTIONLIST>
</PRODUCT>
<PRODUCTS>
Into this:
<OPTIONLIST name="fred"> <!-- All the 'fred' optionlist's merged into
one -->
<OPTION>fred1</OPTION>
<OPTION>fred2</OPTION>
<OPTION>fred3</OPTION>
<OPTION>fred4</OPTION>
</OPTIONLIST>
<OPTIONLIST name="george"> <!-- All the 'george' optionlist's merged into
one -->
<OPTION>george1</OPTION>
<OPTION>george2</OPTION>
</OPTIONLIST>
If the transform was literally just this one case then it wouldn't be a
problem however I want to be able to merge all OPTIONLIST's with the same
name into one OPTIONLIST with that name i.e. I don't want to be limited to
just 'fred' and 'george' option lists but I want to have any number of
different named OPTIONLIST's and have them merged.
Is this possible using just XSLT (in which case I guess I just don't have a
good enough understanding yet) or am I going to have to use a procedural
langauge to solve this part?
TIA,
Jon Payne
TTPCom Ltd Tel: +44 1483 565050
20 Nugent Road
Surrey Research Park
Guildford
Surrey GU2 7DF UK http://www.ttpcom.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list