如何阅读处理指令属性?

时间:2013-04-18 10:01:11

标签: xml xslt xslt-1.0 xslt-2.0

我有XML格式的处理说明。

当我们应用

时,如何在处理指令中获得 id
<xsl:template match="Dest" >
    <?abc ?abc:Dest id="e47529cb-4d17-461b-8438-e3b6d9ec1a68"??>
</xsl:template>

1 个答案:

答案 0 :(得分:2)

解决方案是:

<强> INPUT:

<abc>
<?abc ?abc:Dest id="e47529cb-4d17-461b-8438-e3b6d9ec1a68"??>
</abc>

<强> XSLT:

<?xml version='1.0' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:template match="processing-instruction('abc')">
    <P-I><xsl:value-of select="substring-before(substring-after(.,'id=&quot;'),'&quot;')"/></P-I>
  </xsl:template>
</xsl:stylesheet>

<强>输出:

<P-I>e47529cb-4d17-461b-8438-e3b6d9ec1a68</P-I>