这是我正在使用的 XML 文件的表示:
<root>
<header>
...
</header>
<pupils>
<pupil>
<name>Chris</name>
<assessments>
<stage>
<level>1</level>
<assessment>
<year>2012</year>
<result>55</result>
</assessment>
...
</stage>
</assessments>
</pupil>
...
</pupils>
</root>
注意:学生可以在 2012 年以外的一年进行 1 级的评估。
我希望从 2012 年开始选择具有 1 级评估的学生。
因此,我想问一下以下“嵌套选择器”方法是否适合选择这些学生:
select="root/pupils/pupil[assessments/stage/level[../assessment/year = '2012'] = '1']"
(XsltCake没有返回我所期望的)
我最初的尝试导致了这个:
select="root/pupils/pupil[assessments/stage/level = '1' and assessments/stage/assessment/year = '2012']"
但是,由于学生有可能在 2012 年以外的一年内进行 1 级的评估,同时在 2012 年进行不同级别的评估,因此也会选择这些学生。