xsl-list
[Top] [All Lists]

RE: Is it possible to modify the source-tree?

2005-09-13 21:15:05





Hi,
         Please check the following xslt. I had to make the following
changes.

Get rid of the
 Offset = <xsl:value-of select="../@offset"/>
as the reg for 10 and 20 don't have a parent with an offset attribute. If
you do need the offset when it is present, then you may check if it exists
first before selecting.

The 2nd change was in the apply-templates. Note the /*/*.

    <xsl:apply-templates select="xalan:nodeset($reg_href)/*/*"/>

Iam not exactly sure why it is needed but I think it has to do with
$reg_href referring to the document element, $reg_href to the root element
of the tree and $reg_href/*/* to the child elements of the root element.
Maybe someone can throw more light on this.

cheers,
prakash


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:xalan="http://xml.apache.org/xalan"; version="1.0">

    <xsl:template match="*">
        <xsl:copy>
            <xsl:copy-of select="@*"/>
            <xsl:apply-templates/>
        </xsl:copy>
    </xsl:template>

    <xsl:template match="reg[(_at_)href]">
        <xsl:variable name="reg_href">
            <xsl:copy-of select="//regdef[(_at_)name=current()/@href]"/>
        </xsl:variable>

        <xsl:apply-templates select="xalan:nodeset($reg_href)/*/*"/>
    </xsl:template>

        <xsl:template match="regdef"/>

    <xsl:template match="reg">
        <br/>Register : <xsl:value-of select="."/>

       Prev-Sibling count = <xsl:value-of
select="count(preceding-sibling::reg)"/>

      </xsl:template>

</xsl:stylesheet>


This e-Mail may contain proprietary and confidential information and is sent 
for the intended recipient(s) only. 
If by an addressing or transmission error this mail has been misdirected to 
you, you are requested to delete this mail immediately.
You are also hereby notified that any use, any form of reproduction, 
dissemination, copying, disclosure, modification,
distribution and/or publication of this e-mail message, contents or its 
attachment other than by its intended recipient/s is strictly prohibited.

Visit Us at http://www.polaris.co.in

--~------------------------------------------------------------------
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>
--~--