您好我有以下XML
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" ... someID="ID123">
<SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><endpoints>
...
让我们说因为一些奇怪的原因我在SOAP-ENV:Envelope根标签中有这个属性“someID”。是否可以使用XSLT 1.0读取该属性的内容(我想要“ID123”)?如果是,怎么样?
亲切的问候 阿莱克斯
答案 0 :(得分:0)
也许我错过了什么,但这应该是非常简单的。要在SOAP:Envelope元素上获取属性的值,您可以执行此操作
<xsl:value-of select="/SOAP-ENV:Envelope/@someID" />
您需要确保在XSLT中定义 SOAP-ENV 名称空间前缀。
如果你想让它更通用,而不用担心根元素(或命名空间)是什么,你也可以这样做
<xsl:value-of select="/*/@someID" />
如果你已经定位在根元素上,它会更简单......
<xsl:template match="/*">
<xsl:value-of select="@someID" />
</xsl:template>