我有一个条件,其中section元素应该同时具有num属性和level,可以是2级以外的任何值。如下所示。
<section level="sect2" num="1.">
<title>Flowchart—HKIAC Mediation</title>
</section>
<section level="sect3">
<title>Flowchart—HKIAC Mediation</title>
</section>
<section level="sect2">
<title>Flowchart—HKIAC Mediation</title>
</section>
当我使用下面的xslt时,它只计算带数字属性的第一个xml并留下第二个和第三个。但是我想要计算第一和第三的结果。
我使用了以下声明
<xsl:number count='section[@num]'/>
但我想要类似下面的内容
<xsl:number count='section[@num] and section[@level!='sect2']'/>
由于
答案 0 :(得分:0)
试试这个 -
<xsl:number count="section[@num and @level != 'sect2']"/>
对于您在评论中的问题,请尝试这意味着num属性不存在 -
<xsl:number count="section[not(@num) and @level = 'sect2']"/>
你的意思是你不关心level = sect2然后就这样删除 -
<xsl:number count="section[not(@num)]"/>
这将为您计算num属性不存在的位数,level的值不是sect2。
<xsl:number count="section[not(@num) and @level != 'sect2']"/>
答案 1 :(得分:0)
在我的理解中更多:
<xsl:number count="section[@num or @level != 'sect2']"/>
由于: 但我想要计算第一和第三,留下第二。 编辑:似乎应该是第一和第二 所有部分似乎都是“@level!='sect2'”,所有部分都带有“@num”。