在XML模式中使用assert不允许在满足特定条件时显示节点
如果我想表达以下内容,我应该在assert语句中写些什么:在XML文件中,每当出现一个A节点时,B节点或C节点或两者都应该出现,这样一个\@OID eq B \@OID和一个\@OID eq C \@OID。基本上,对于提供的XML,OID=HHH的最后一个节点不应该出现 以下是XML架构文档: -> 在XML文件中,每当出现A节点时,B节点或C节点或两者都应出现,以使\@OID eq B\@OID和\@OID eq C\@OID 听起来像在XML模式中使用assert不允许在满足特定条件时显示节点,xml,xpath,xsd,Xml,Xpath,Xsd,如果我想表达以下内容,我应该在assert语句中写些什么:在XML文件中,每当出现一个A节点时,B节点或C节点或两者都应该出现,这样一个\@OID eq B \@OID和一个\@OID eq C \@OID。基本上,对于提供的XML,OID=HHH的最后一个节点不应该出现 以下是XML架构文档: -> 在XML文件中,每当出现A节点时,B节点或C节点或两者都应出现,以使\@OID eq B\@OID和\@OID eq C\@OID 听起来像 <xs:assert test="every $
<xs:assert test="every $a in A satisfies
(exists(B[@OID eq $a/@OID]) or exists(C[@OID eq $a/@OID]))"/>
可以缩短为
<xs:assert test="every $a in A satisfies (B|C)[@OID eq $a/@OID]"/>