选择其同级包含属性XML的元素
我试图选择属性值大于1的标题值:选择其同级包含属性XML的元素,xml,xpath,Xml,Xpath,我试图选择属性值大于1的标题值: path="//book/price[@value >1] 我不确定如何只选择元素price的属性值大于1的标题。我是一名XML初学者,正在做一些教程中的练习 我的优先事项是 学习XML 超级XML XML: 哈利·波特 49.99 学习XML 29.95 超级xml 39.95 更新 第一个查询非常完美,您能告诉我如何从嵌套元素获取它吗 <bookstore> <book> <title lang="en">
path="//book/price[@value >1]
我不确定如何只选择元素price的属性值大于1的标题。我是一名XML初学者,正在做一些教程中的练习
我的优先事项是
哈利·波特
49.99
学习XML
29.95
超级xml
39.95
更新
第一个查询非常完美,您能告诉我如何从嵌套元素获取它吗
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<possibleprice>
<price value="1">49.99</price>
</possibleprice>
</book>
<book>
<title lang="en">Learning XML</title>
<possibleprice>
<price value="2">29.95</price>
</possibleprice>
</book>
<book>
<title lang="en">super xml</title>
<possibleprice>
<price value="3">39.95</price>
</possibleprice>
</book>
</bookstore>
哈利·波特
49.99
学习XML
29.95
超级xml
39.95
例如:
对于OP的第一个版本:
输入:
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<price value="1">49.99</price>
</book>
<book>
<title lang="en">Learning XML</title>
<price value="2">29.95</price>
</book>
<book>
<title lang="en">super xml</title>
<price value="3">39.95</price>
</book>
</bookstore>
结果:
<title lang="en">Learning XML</title>
<title lang="en">super xml</title>
结果同上
若要回答注释中的问题,是否需要在第二个版本中使用两次前置同级:否。前置同级
针对当前节点的前置同级
。本例中的当前节点是price,没有同级节点,但是父节点是possibleprice。要以与上述不同的方式获得相同的结果,可以获得price的父项
,然后是possibleprice的前兄弟项
:
结果也是一样的
如前所述,OP是XML初学者,以下内容可能有助于说明XPath轴:例如:
对于OP的第一个版本:
输入:
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<price value="1">49.99</price>
</book>
<book>
<title lang="en">Learning XML</title>
<price value="2">29.95</price>
</book>
<book>
<title lang="en">super xml</title>
<price value="3">39.95</price>
</book>
</bookstore>
结果:
<title lang="en">Learning XML</title>
<title lang="en">super xml</title>
结果同上
若要回答注释中的问题,是否需要在第二个版本中使用两次前置同级:否。前置同级
针对当前节点的前置同级
。本例中的当前节点是price,没有同级节点,但是父节点是possibleprice。要以与上述不同的方式获得相同的结果,可以获得price的父项
,然后是possibleprice的前兄弟项
:
结果也是一样的
如前所述,OP是XML初学者,以下内容可能有助于说明XPath轴:例如:
对于OP的第一个版本:
输入:
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<price value="1">49.99</price>
</book>
<book>
<title lang="en">Learning XML</title>
<price value="2">29.95</price>
</book>
<book>
<title lang="en">super xml</title>
<price value="3">39.95</price>
</book>
</bookstore>
结果:
<title lang="en">Learning XML</title>
<title lang="en">super xml</title>
结果同上
若要回答注释中的问题,是否需要在第二个版本中使用两次前置同级:否。前置同级
针对当前节点的前置同级
。本例中的当前节点是price,没有同级节点,但是父节点是possibleprice。要以与上述不同的方式获得相同的结果,可以获得price的父项
,然后是possibleprice的前兄弟项
:
结果也是一样的
如前所述,OP是XML初学者,以下内容可能有助于说明XPath轴:例如:
对于OP的第一个版本:
输入:
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<price value="1">49.99</price>
</book>
<book>
<title lang="en">Learning XML</title>
<price value="2">29.95</price>
</book>
<book>
<title lang="en">super xml</title>
<price value="3">39.95</price>
</book>
</bookstore>
结果:
<title lang="en">Learning XML</title>
<title lang="en">super xml</title>
结果同上
若要回答注释中的问题,是否需要在第二个版本中使用两次前置同级:否。前置同级
针对当前节点的前置同级
。本例中的当前节点是price,没有同级节点,但是父节点是possibleprice。要以与上述不同的方式获得相同的结果,可以获得price的父项
,然后是possibleprice的前兄弟项
:
结果也是一样的
如前所述,OP是XML的初学者,以下内容可能有助于说明XPath轴:假设该属性嵌套在另一个元素中。我需要使用前面的兄弟姐妹两次吗?我将更新问题以澄清,非常感谢,并感谢您提供的资源!很好地工作,假设属性嵌套在另一个元素中。我需要使用前面的兄弟姐妹两次吗?我将更新问题以澄清,非常感谢,并感谢您提供的资源!很好地工作,假设属性嵌套在另一个元素中。我需要使用前面的兄弟姐妹两次吗?我将更新问题以澄清,非常感谢,并感谢您提供的资源!很好地工作,假设属性嵌套在另一个元素中。我需要使用前面的兄弟姐妹两次吗?我将更新问题以澄清,非常感谢,并感谢您提供的资源!工作完美你的编辑实质性地改变了问题,这对马蒂亚斯·吴有点不公平,他正确地回答了原来的问题。(它还将非良好格式的XML引入到混合中,在能够与XPath一起使用之前必须对其进行修复。)您应该恢复编辑,接受matthias_h的答案,并提出一个新问题。谢谢。我知道我会的,我不知道我做不到apologies@kjhughes谢谢,我已经在答案中添加了OP的第一个版本,所以它是有效的。阿卡姆雷耶克:我不介意更新OP,但在更新时,你可以做如下操作:保留OP,在原始的下面,在进一步的问题上写上“更新”或其他东西,这样就不会太烦人/需要阅读所有答案和评论才能理解。我将更新我的答案以涵盖第二个问题。但kjhughes提出新问题的建议是正确的。如果其他人会回答第二个问题,这将有点不公平,因为你不可能同时接受这两个问题。我添加了更新,很抱歉,我仍然在学习如何工作。我已经更新了问题,你介意帮我吗?还是我应该发布另一个问题,因为我已经给了你最好的答案?我不介意,更新了我的答案,别担心。没有必要为此发布其他问题。请编辑您的