xPath检索列表属性

时间:2014-06-25 14:26:14

标签: list xpath get attributes

有xml文档:

<home>
 <page name="Home"></page>
 <page name="Photos"></page>
 <page name="News"></page>
 <page name="About Us"></page>
</home>

如何检索所有名称的值 使用xPath创建链接列表的属性。

希望不使用for-each

2 个答案:

答案 0 :(得分:1)

可以使用以下绝对表达式获取包含所有名称属性的集合:

/home/page/@name

或使用此后代轴表达式:

//page/@name

答案 1 :(得分:1)

XPath /home/page/@name将返回name元素中的所有page个属性。

例如在XSLT中使用模板匹配:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text" />

    <xsl:variable name="newline" select="'&#xa;'" />

    <xsl:template match="@*|node()">
        <xsl:apply-templates select="@*|node()" />
    </xsl:template>

    <xsl:template match="@name">
        <xsl:value-of select="." />
    </xsl:template>
</xsl:stylesheet>