XML で処理命令があります。
を適用するときに、処理命令でid値を取得するにはどうすればよいですか
<xsl:template match="Dest" >
<?abc ?abc:Dest id="e47529cb-4d17-461b-8438-e3b6d9ec1a68"??>
</xsl:template>
解決策は次のとおりです。
入力:
<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="'),'"')"/></P-I>
</xsl:template>
</xsl:stylesheet>
出力:
<P-I>e47529cb-4d17-461b-8438-e3b6d9ec1a68</P-I>