Subject: Re: [xsl] Mapping from two sources (~ inner join in DB) From: sudheshna iyer <sudheshnaiyer@xxxxxxxxx> Date: Sun, 3 Oct 2010 12:23:18 -0700 (PDT) |
Team, For this, I solved using two for-each loops. I am not sure whether this is performance efficient way of doing this. Please suggest if there is any other better way to improve performance: ==== <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:variable name="input2" select="document('file:///C:/temp/input2.xml')"/> <xsl:template match="Order"> <OrderResponse> <xsl:for-each select="OrderLine"> <xsl:variable name="vOln" select="OLN"/> <Oline> <xsl:variable name="vID"> <xsl:for-each select="$input2/POOrder/POOrderLine"> <xsl:if test="$vOln=OLN"> <xsl:value-of select="ID"/> </xsl:if> </xsl:for-each> </xsl:variable> <OLN><xsl:value-of select="$vOln"/></OLN> <ID><xsl:value-of select="$vID"/></ID> <Fname><xsl:value-of select="Fname"/></Fname> <Email><xsl:value-of select="Email"/></Email> </Oline> </xsl:for-each> </OrderResponse> </xsl:template> </xsl:stylesheet> ===== --- On Sun, 10/3/10, sudheshna iyer <sudheshnaiyer@xxxxxxxxx> wrote: > From: sudheshna iyer <sudheshnaiyer@xxxxxxxxx> > Subject: [xsl] Mapping from two sources (~ inner join in DB) > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Date: Sunday, October 3, 2010, 2:56 PM > Team, > > For the below question, I got the answers from you using > <xsl:for-each-group>. But my version of XSLT is not > supporting xsl:for-each-group. > > Is there a different way of implementing this? > ======= > I need to have two sources: > > input1 and input2. > > input1: > <?xml version="1.0" encoding="ISO-8859-1"?> > <Order> > <OrderLine> > > <OLN>1</OLN> > > <Fname>aa</Fname> > </OrderLine> > <OrderLine> > > <OLN>2</OLN> > > <Fname>bb</Fname> > </OrderLine> > </Order> > > > input2: > <?xml version="1.0" encoding="ISO-8859-1"?> > <POOrder> > <POOrderLine> > > <OLN>1</OLN> > > <ID>123</ID> > > <LName>aa</LName> > </POOrderLine> > <POOrderLine> > > <OLN>2</OLN> > > <ID>324</ID> > > <LName>bb</LName> > </POOrderLine> > <POOrderLine> > > <OLN>3</OLN> > > <ID>456</ID> > > <LName>bb</LName> > </POOrderLine> > </POOrder> > > I need the output from both sources combined. Please note > that first two elements are coming from input1 and thrid > element is from input2. What is the > optimal way of doing this? > > <?xml version="1.0" encoding="ISO-8859-1"?> > <OrderResponse> > <Oline> > > <OLN>1</OLN> > > <Fname>aa</Fname> > > <ID>123</ID> > </Oline> > <Oline> > > <OLN>2</OLN> > > <Fname>bb</Fname> > > <ID>324</ID> > </Oline> > </OrderResponse> > > > > > --~------------------------------------------------------------------ > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/ > or e-mail: <mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx> > --~--
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Mapping from two sources (~ i, sudheshna iyer | Thread | Re: [xsl] Mapping from two sources , G. Ken Holman |
[xsl] Mapping from two sources (~ i, sudheshna iyer | Date | Re: [xsl] Mapping from two sources , G. Ken Holman |
Month |