是否可以在XSD中的Xpath中指定OR?

时间:2009-08-05 08:49:48

标签: xpath xsd

我希望能够保证两种元素的唯一性:MainQuestion和AlternateQuestion。  在我的xsd:key的select查询中,我可以指定“// MainQuestion或// AlternateQuestion”的内容吗?有人告诉我这样的东西存在,但似乎XSD只支持XPath语法的一个子集......

3 个答案:

答案 0 :(得分:2)

您应该像往常一样使用|

//MainQuestion | //AlternateQuestion

语法确实受到限制 - 它与XSLT 1.0中的模板模式的限制大致相同,但除此之外,它不能在路径步骤中使用任何过滤器。但是,|被明确列为支持。

答案 1 :(得分:1)

支持Pavel的答案,你可以使用“|”在XML Schema中的XPath中。

XML Schema支持XPath的一个子集(我认为是“假的XPath”)。它支持的内容在规范中明确说明。您必须通过几个部分进行追踪才能找到它。这是指向确切部分的链接:

http://www.w3.org/TR/xmlschema-1/#c-selector-xpath

答案 2 :(得分:0)