0
我有喜歡的XML如下XSLT - 校驗節點存在或者不使用功能
<doc>
<meta-data>
<paper-name>ABC</paper-name>
<paper-type>fi</paper-type>
</meta-data>
<section>
<figure>fig1</figure>
<figure>fig2</figure>
</section>
</doc>
我的要求是,如果<paper-type>
節點是<meta-data>
變化<figure>
節點<image>
節點可用。
因此,輸出應該是什麼樣子,
<doc>
<meta-data>
<paper-name>ABC</paper-name>
<paper-type>fi</paper-type>
</meta-data>
<section>
<image>fig1</image>
<image>fig2</image>
</section>
</doc>
我已經寫了下面的xsl做這個任務,
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:function name="abc:check-paper-type" as="xs:boolean">
<xsl:sequence select="root()//meta-data/paper-type"/>
</xsl:function>
<xsl:template match="figure[abc:check-paper-type()]">
<image>
<xsl:apply-templates/>
</image>
</xsl:template>
檢查<paper-type>
節點可用內<meta-data>
我寫了一個函數這裏命名「籤紙類型」。但不能按預期工作。
任何建議如何組織我的功能檢查,<paper-type>
是否可用?
請注意,我需要通過檢查<paper-type>
節點是否存在來更改大量節點。所以,使用函數檢查<paper-type>
是否存在非常重要。
這是一個示例代碼,我需要通過檢查節點改變很多節點名稱是存在或不。因此,如果我可以使用函數來檢查是否可用,它將會更加有效。我對原始問題缺乏細節表示歉意。 –
sanjay
看看編輯答案是否有幫助。 –