最大:/foo/bar[not(preceding-sibling::bar/@score >= @score) and not(following-sibling::bar/@score > @score)]/@score最低:/foo/bar[not(preceding-sibling::bar/@score <= @score) and not(following-sibling::bar/@score < @score)]/@score 如果将这些查询嵌入XSLT或ant脚本之类的XML文件中,请记住将<和>编码为<并遵守>. If I have XML like:<foo> <bar id="1" score="192" /> <bar id="2" score="227" /> <bar id="3" score="105" /> ...</foo>Can I use XPath to find the minimum and maximum values of score?Edit: The tool i'm using (Andariel ant tasks) doesn't support the XPath 2.0 solution. 解决方案 Turns out the tool does not support XPath 2.0.XPath 1.0 doesn't have the fancy min() and max() functions, so to find these values we need to be a little tricky with the XPath logic, and compare the values on the siblings of the node:Maximum:/foo/bar[not(preceding-sibling::bar/@score >= @score) and not(following-sibling::bar/@score > @score)]/@scoreMinimum:/foo/bar[not(preceding-sibling::bar/@score <= @score) and not(following-sibling::bar/@score < @score)]/@scoreIf embedding these queries in XML files like XSLT or ant scripts, remember to encode < and > as < respecting >. 这篇关于如何使用XPath在一组元素中查找属性的最小值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!