Xml 获取参与XSLT中条件的前一个同级

Xml 获取参与XSLT中条件的前一个同级,xml,xslt,Xml,Xslt,我有一个XML文件,其中包含以下数据作为示例: <file name="path\to\file1\"> </file> <file name="path\to\file2\"> <error line="10" message="This file has an error"/> </file> <file name="path\to\file3\"> </file> <file name="path\t

我有一个XML文件,其中包含以下数据作为示例:

<file name="path\to\file1\">
</file>
<file name="path\to\file2\">
<error line="10" message="This file has an error"/>
</file>
<file name="path\to\file3\">
</file>
<file name="path\to\file4\">
<error line="15" message="This file has an error too"/>
</file>

现在假设我在“file4”节点上。我想得到前面第一个有错误行的同级,在本例中是“file2”,但在真正的XML中,我不知道它的位置

这是我可以使用前面的同级轴执行此检查的方法吗

提前谢谢

我想得到前面第一个有错误行的同级

我不确定“get”在本文中的确切含义,但您可以使用以下命令选择前面第一个有错误行的同级文件:

select="preceding-sibling::file[error][1]"

那很简单。。很有魅力,谢谢!