使用XSLT提取节点值

时间:2013-06-25 00:55:14

标签: xslt

我有一个像下面的xml

<Envelope>
<Body>
<response>
<timestamp>
<status>
<Objectstatus>
<class>stats</class>
<Adminstate>disabled</Adminstate>
<name>abc</name>
</objectstatus>
<objectstatus>
<class>Policy</class>
<adminstate>enabled</adminstate>
<names>xyz</name>
</Objectstatus>

预期的响应是统计数据,禁用,abc                          政策,启用,XYZ

请您告诉我如何使用样式表来完成它。

1 个答案:

答案 0 :(得分:2)

首先,确保您的子节点具有相同的名称(Adminstate或adminstate等等),请记住它是区分大小写的。

我也假设你想要一个HTML输出,这是你可以尝试的:

 <xsl:for-each select="//Objectstatus">
   <p>
     <xsl:value-of select="./class"/>
     <xsl:text>,</xsl:text>
     <xsl:value-of select="./Adminstate"/>
     <xsl:text>,</xsl:text>
     <xsl:value-of select="./name"/>
   </p>
 </xsl:for-each>

这是输出:

stats,disabled,abc Policy,enabled,xyz