匹配<hx id =“label”> </hx>

时间:2014-05-14 13:06:57

标签: xslt

我有像

这样的来源
  <h1> ...  <h1>  

(h1也可能是h2和h3。) h1可能有一个id属性。 如果它没有&#34; id&#34;属性,我想给它一个。 模板的外观如何,以匹配h1 WITHOUT和属性&#34; id&#34;,以及如何处理标签呢? 也许是这样的?:

   <xsl:template match="(h1 | h2 | h3)[not(@id)]" >
   <!-- here I have to generate a tag h1, h2 or h3: how? -->
   <xsl:attribute name="id">G10.2</xsl:attribute>
   </h123>
   </xsl:template>

1 个答案:

答案 0 :(得分:3)

怎么样:

<xsl:template match="h1[not(@id)] | h2[not(@id)] | h3[not(@id)]" >
    <xsl:copy>
           <xsl:attribute name="id">G10.2</xsl:attribute>
           <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
</xsl:template>