编写逻辑表达式
本节介绍了如何在审阅者/观察者 XML 文件符号中编写逻辑表达式。
例如,如果 ab 为布尔变量,则逻辑表达式 a AND b 转换为:
<Condition>
<And>
a
b
</And>
</Condition>
这表示标记 And 的开头和 And 的结尾之间的任何事物在逻辑上用“和”连接。同样,表达式 a OR b 转换为:
<Condition>
<Or>
a
b
</Or>
</Condition>
DTD 描述的 XML 语法允许条件嵌套,因此示例中的 ab 可以是逻辑条件。例如,表达式 (a AND b) OR (c AND d) 转换为:
<Condition>
<Or>
<And>
a
b
</And>
<And>
c
d
</And>
</Or>
</Condition>
Or 的开头和 Or 的结尾之间的任何事物在逻辑上用“或”连接,因此以下两个表达式:
<And>
a
b
</And>
<And>
c
d
</And>
用“或”连接。举一个更复杂的例子,(( (a AND b) OR (c AND d) ) OR (e AND f)) AND (g OR h) 等同于:
<Condition>
<And>
<Or>
<Or>
<And>
a
b
</And>
<And>
c
d
</And>
</Or>
<And>
e
f
</And>
</Or>
<Or>
g
h
</Or>
</And>
</Condition>
请注意,DTD 明确拒绝以下形式的表达式:
<Condition>
<Or>
<And>
a
b
</And>
c
</Or>
</Condition>
如果 c 是叶条件,例如,IssueFieldConditionChangePackageFieldConditionChangePackageEntryFieldCondition 其中之一)。叶条件必须始终嵌入在逻辑运算符的开始和结束标记之间 (AndOr)。
这对您有帮助吗?