xsl-list
[Top] [All Lists]

Re: [xsl] Two different input get single output

2009-12-07 07:43:56
Selvaganesh wrote:

I have challenging for xsl creating of two different input xml and get
single output xml file. Can you guide us how is prepare in easy way.

This XSLT 2.0 stylesheet:

<xsl:stylesheet
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
  xmlns:xsd="http://www.w3.org/2001/XMLSchema";
  exclude-result-prefixes="xsd"
  version="2.0">

  <xsl:param name="url2" as="xsd:string" select="'test2009120703.xml'"/>
  <xsl:variable name="doc2" select="doc($url2)"/>

  <xsl:key name="k1" match="definition" use="term"/>

  <xsl:output indent="yes"/>

  <xsl:template match="cases">
    <derivations>
      <xsl:apply-templates select="section"/>
    </derivations>
  </xsl:template>

  <xsl:template match="section">
    <derivation>
      <xsl:value-of select="concat('Subsection ', content)"/>
      <xsl:apply-templates select="type"/>
<xsl:value-of select="key('k1', tokenize(origin, ', '), $doc2)/def" separator=", "/>
    </derivation>
  </xsl:template>

  <xsl:template match="section/type[not(normalize-string)]">
    <xsl:text> replace, </xsl:text>
  </xsl:template>

  <xsl:template match="section/type[. = 'Drafting']">
    <xsl:text> was created in drafting, </xsl:text>
  </xsl:template>

  <xsl:template match="section/type[. = 'New']">
    <xsl:text> is a new provision, </xsl:text>
  </xsl:template>

</xsl:stylesheet>

creates the following result:

<derivations>
   <derivation>Subsection (1) replace, Finance Act</derivation>
<derivation>Subsection (2) was created in drafting, Finance Act, Caravan Sites Act</derivation> <derivation>Subsection (3) is a new provision, Caravan Sites Act, Income and
Corporation Taxes Act</derivation>
</derivations>

The Subsection numbers are different from what you asked for but I could not see where those numbers in your posted output come from. If you can't fix the stylesheet yourself then please explain where those numbers come from.

--

        Martin Honnen
        http://msmvps.com/blogs/martin_honnen/

--~------------------------------------------------------------------
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--