[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: order update
XML: <root> <order ordernr="100"> <orderline orderlinenr="1"> <art>1</art> </orderline> </order> <order ordernr="101"> <orderline orderlinenr="1"> <art>1</art> </orderline> </order> <order ordernr="102"> <orderline orderlinenr="1"> <art>1</art> </orderline> </order> </root> order.xml <root> <order ordernr="101"> <orderline orderlinenr="2"> <art>50</art> </orderline> <orderline orderlinenr="3"> <art>60</art> </orderline> </order> </root> XSL <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output indent="yes"/> <xsl:variable name="file" select="document('order.xml')"/> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> </xsl:template> <xsl:template match="order"> <xsl:copy> <xsl:apply-templates select="@*"/> <xsl:apply-templates select="orderline | $file/root/order[@ordernr=current()/@ordernr]/orderline"> <xsl:sort select="@orderlinenr"/> </xsl:apply-templates> </xsl:copy> </xsl:template> </xsl:stylesheet> Output <root> <order ordernr="100"> <orderline orderlinenr="1"> <art>1</art> </orderline> </order> <order ordernr="101"> <orderline orderlinenr="1"> <art>1</art> </orderline> <orderline orderlinenr="2"> <art>50</art> </orderline> <orderline orderlinenr="3"> <art>60</art> </orderline> </order> <order ordernr="102"> <orderline orderlinenr="1"> <art>1</art> </orderline> </order> </root> Hope this helps, Joerg > i have an xml that contains 1 orderline of order 100 > > <order ordernr="100"> > <orderline orderlinenr="1"> > <art>1</art> > </orderline> > </orderline> > > now i want to add new orderlines from an update.xml file > which contains > > <order ordernr="100"> > <orderline orderlinenr="2"> > <art>50</art> > </orderline> > <orderline orderlinenr="3"> > <art>60</art> > </orderline> > </orderline> > > How do i put these 2 together without loosing the first orderline that is already in this order. > > output xml should be > > <order ordernr="100"> > <orderline orderlinenr="1"> > <art>1</art> > </orderline> > <orderline orderlinenr="2"> > <art>50</art> > </orderline> > <orderline orderlinenr="3"> > <art>60</art> > </orderline> > </orderline> > > thanks > pGl XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|