我有这样的XML文档:
<groups>
<group id="A">
<file id="kr3" href="..."/>
<file id="6ft" href="..."/>
...
</group>
<group id="B">
<file id="8dg" href="..."/>
<file id="g32" href="..."/>
...
</group>
</groups>
<structs>
<struct id="abc1">
<filepointer id="kr3"/>
<filepointer id="8dg"/>
...
</struct>
<struct id="abc2">
<filepointer id="6ft"/>
<filepointer id="g32"/>
...
</struct>
</struct>
在XSLT中,我想找到targetFileUrl。
struct
定义了不同group
节点的文件之间的映射。因此,我提供了一个sourceUrl
和一个targetGroupId
。我想找出在struct
中映射的匹配节点。
所以我需要这样:
'http://...'
'B'
//file[@href=$sourcehUrl]/@id
//struct/filepointer[@id=$sourceFileId]/../@id
//file[@id=$targetFileId]/@href
如何找到与给定结构中的一个filepointer
匹配的正确文件ID?