Re: [xsl] How to test if a node is a descendant of a specific ancestor

Subject: Re: [xsl] How to test if a node is a descendant of a specific ancestor
From: Ronald <ronald@xxxxxxxxxxx>
Date: Thu, 26 Apr 2001 14:59:03 +0100
It seems to me some reading on xsl and xpath would do much for you.

If you haven't got the time to do so, here's the code :-)

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

<xsl:template match="/">
 <xsl:apply-templates/>
</xsl:template>

<xsl:template match="//string">
  <xsl:if test="ancestor::head-row">
      <p class="head-row">some content1</p>
  </xsl:if>

  <xsl:if test="ancestor::body-row">
      <p class="body-row">some content2</p>
  </xsl:if>
</xsl:template>

</xsl:stylesheet>


Ronald


At 02:47 PM 4/26/01 +0200, you wrote:
Hello!

I have an xml file that looks like the following:

<layout>
    <head-row>
        <data>
            <string>
            </string>
        </data>
    </head-row>

    <body-row>
        <data>
            <string>
            </string>
        </data>
    </body-row>
</layout>

Then I have a template rule in an XSL file that looks like the following:

<xsl:template match="//string">
.......Pseudo code:
<test if the current context node is a descendant of head-row>
    <p class="head-row">some content</p>
</test>

<test if the current context node is a descendant of body-row>
    <p class="body-row">some content</p>
</test>
...........


How can I test this?



Sebastian Schirmer


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread