[xsl] Template doesn't seem to match

Subject: [xsl] Template doesn't seem to match
From: russurquhart1@xxxxxxxxxxx
Date: Mon, 09 Jul 2012 13:25:19 -0500 (CDT)
 Hi,

I have a couple of templates that i thought would handle things but they seem to be working wrong, but i know it must be something i am missing.

The first template:

<xsl:template match="SubSection[@filter='filter1']" priority="1">
        <SubSection>
            <xsl:copy-of select="./Title"/>
            <xsl:processing-instruction name="xm-insertion_mark_start"> author="x0167021" time="20120629T115628-0600"</xsl:processing-instruction>
            <Para>This subsection contains only NDA content and is not available in the public domain.</Para>
            <xsl:processing-instruction name="xm-insertion_mark_end"/>    
        </SubSection>

    </xsl:template>

matches a SubSection element that has a filter attribute set to 'filter1', and outputs a Para element saying that entire element is an NDA only section.

The second template:


<xsl:template match="SubSection[*[@filter='filter1']]">
        <SubSection>
            <xsl:apply-templates/>
        </SubSection>
    </xsl:template>

matches a SubSection element that contains any element having a filter attribute set to 'filter1', if so continue processing.

The third template i think should work, but isn't completely. This template should return any remaining SubSection elements, and all that are left at this time, i would think, would be those that have no NDA content.

<xsl:template match="SubSection">
        <SubSection>
            <xsl:copy-of select="./Title"/>
            <Para>This Subsection does not contain any NDA content.</Para>
            <xsl:apply-templates select="SubSection"/>
        </SubSection>
    </xsl:template>


The problem i'm having is that i have an element, in a SubSection, that HAS a filter attribute set to 'filter1', but the second template is NOT catching it. It's getting matched in the third template. Shouldn't the first, second and third templates handle the possibilites? 

I'm sure this is something i'm over looking, but i appreciate any help you can provide!


thanks,


Russ

Current Thread