我嘗試做一個不那麼辛苦的xpath 2.0表達式,但仍然被阻止。XPath表達式 - 或不按預期方式工作
下面是XML文件:
<request>
<cmt:transmission>
<cmt:workflow>
<cm:work>
<cm:expression>
<cm:manifestation>
<cm:reference_manifestation format="FMX4"
sequence="1">file1.xml</cm:reference_manifestation>
<cm:reference_manifestation format="TIFF"
sequence="2">file2.tif</cm:reference_manifestation>
<cm:reference_manifestation format="FMX4"
sequence="3">file3.xml</cm:reference_manifestation>
<cm:extension xsi:type="ojext:OJManifestationExtensionType">
<ojext:manifestation_type>fmx4</ojext:manifestation_type>
</cm:extension>
</cm:manifestation>
</cm:expression>
</cm:work>
</cmt:workflow>
</cmt:transmission>
我嘗試做的XPath是: 如果我manifestation_type是 'FMX4',那麼我reference_manifestation的格式必須是' FMX4'或'TIFF'。如果我的規則不被尊重,那麼我想獲得顯示。
這是我目前的無效的XPath:
descendant::*:manifestation[*:extension/*:manifestation_type ='fmx4' and not (*:reference_manifestation/@format = 'FMX4' or *:reference_manifestation/@format = 'TIFF') ]
有人可以幫助我嗎?
謝謝
你沒有'或'表情嗎? – AlexR
是的,如果我只用FMX4或TIFF表達式就可以了。 –
我再次審查你的問題,並不明白的東西。你寫道「那麼我的reference_manifestation格式必須是'FMX4'或'TIFF'」,但是在你的XPath表達式中使用'和not(...)'。你確定你需要'不'嗎?如果你說某件事必須是'FMX4'或'TIFF',那麼你就不需要'不'。或者我錯過了什麼? – AlexR