我正在尝试构建和 XPath 查询以根据另一个元素的属性选择一个元素。我的 XML 是这样的:
<datadoc>
<data>
<molecule coorddimension="3">
<properties>
<property name="Mol2_MolInfo_Name" type="stringvalue">
<val>ZINC01532215_1</val>
</property>
</properties>
<atom key="0" element="6" x="8.2965" y="42.3268" z="14.1097">
<properties>
<property name="AtomName" type="stringvalue">
<val>C1</val>
</property>
</properties>
</atom>
<atom key="9" element="6" x="7.3131" y="43.2537" z="13.9462">
<properties>
<property name="AtomName" type="stringvalue">
<val>C10</val>
</property>
</properties>
</atom>
<bond atomref1="0" atomref2="9" type="double">
<properties>
<property name="BondSybylType" type="stringvalue">
<val>ar</val>
</property>
</properties>
</bond>
</molecule>
</data>
</datadoc>
基本上我想要的是选择@atomref1 y @atomref2 键的属性中的键引用@key 属性的原子。就是这样,在 Bond 节点中,获取该 Bond 引用的 Atom 元素。
我尝试的是这样的:
../atom[@key = ./@atomref1]
我使用 .. 因为当我进行查询时,我在 Bond 节点中,但这似乎不起作用。如果这可以用 XPath 完成,有什么想法吗?
谢谢。