This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

merging unknown nodes


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]