假设我有以下元素:
<?xml version="1.0"?>
<!DOCTYPE factory[
<!ELEMENT factorry (worker)+>
<!ELEMENT worker (#PCDATA)>
<!ATTLIST worker id ID #REQUIRED
boss IDREF #IMPLIED>
]>
<factory>
<worker id="i1"> jon </worker>
<worker id="i2" boss="i1"> sean </worker>
<worker id="i3" boss="i2"> jerry </worker>
<worker id="i4" boss="i3"> berry </worker>
</factory>
现在我想编写 XPATH 查询,它将给我老板的所有老板,所以在这个例子中,我希望结果是:
<worker id="i1"> jon < /worker>
<worker id="i2" boss="i1"> sean </worker>
因为 Jon 是 Sean 的老板,而 Sean 是 Jerry 的老板,Sean 也是同样的逻辑。
我知道如果我写了id(//worker/@boss)
我会得到 John、Sean 和 Jerry,所以我想在这个组上再次应用相同的逻辑,但我不知道该怎么做。