Xml 未触发XSLT模式
我尝试使用xslt模板匹配和模式功能,根据条件运行特定模板。在这种情况下,是否将Xml 未触发XSLT模式,xml,xslt,mode,Xml,Xslt,Mode,我尝试使用xslt模板匹配和模式功能,根据条件运行特定模板。在这种情况下,是否将admin设置为true <xsl:template match="*[//Properties[@Admin='true']]" mode="admin"> <!-- i get here --> <apply-templates select="self::node()[not(../PersonalisedErrorInstance)]" mode="persona
admin
设置为true
<xsl:template match="*[//Properties[@Admin='true']]" mode="admin">
<!-- i get here -->
<apply-templates select="self::node()[not(../PersonalisedErrorInstance)]" mode="personalisation"/>
</xsl:template>
<xsl:template match="*[//Properties[@Admin='false']]" mode="admin">
<apply-templates select="self::node()" mode="personalisation"/>
</xsl:template>
<xsl:template match="*" mode="personalisation">
<!-- never get here -->
出于某种原因,我似乎从未点击过个性化模板匹配,无论admin
是true
还是false
。是否有明显的事情表明我做错了
我已尝试将
self::node()
更改为*
,因此我不确定是什么导致了问题 *
表示任何子实体,不能替换self::node()
如果您提供源XML,我们可能会发现您的问题。可能是当前节点有一个同级实例PersonalisedErrorInstance
致意
Majo您忘记了应用模板中的前导
xsl:
<代码>应该能正常工作,我想。@potame叹息。。。哈哈,我已经盯着它看了好几个小时了。谢谢射杀自己