关于PER中约束的可扩展性和可见性令人困惑

时间:2015-10-14 04:29:37

标签: constraints asn.1 extensibility

我对X.691-0207第49页的例子感到困惑。

根据条款B.2.2.10(页48):因为UNION和INTERSECTION都是可交换的,所以结果的规则仅针对V第一种情况给出。如果所有组件都是V,那么ITU-T Rec。的正常规则。 X.680 | ISO / IEC 8824-1适用,这里不再进一步讨论。所有组件都是我总是给我的情况,并且再次没有列出。规则是:

V UNION I => I
V INTERSECTION I => V
-- The resulting V is just the V part of the intersection V EXCEPT I => V
-- The resulting V is just the V without the set difference I EXCEPT V => I
V, ..., I => I
I, ..., V => I

对以下示例的约束进行算术运算:

A13 ::= IA5String (SIZE(1..10, ...) ^ FROM("A".."D"))

的产率:

  SIZE(1..10, ...) ^ FROM("A".."D")
= { SIZE(1..10, ...), ALL } ^ { SIZE(MIN..MAX), FROM("A".."D") }
= { SIZE(1..10, ...) ^ SIZE(MIN..MAX), ALL ^ FROM("A".."D") }
= { SIZE(1..10), FROM("A".."D") }

但是这个例子说" A13有一个可扩展的有效大小约束SIZE(1..10,...)",可扩展性在哪里出现?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您使用的示例相当于" V INTERSECTION V => V"因为作为交叉点一部分的每个约束是PER可见约束。交叉的结果也是PER可见也就不足为奇了。请注意,应用INTERSECTION不会消除可扩展性。您应该查看X.691第10.3节中的规范性规则,而不仅仅是查看附录B中的信息性示例,该规则明确定义了PER可见约束的规则。特别是,10.3.9表示所有大小约束都是PER可见,10.3.21表示当PER可见约束是INTERSECTION的一部分时,结果约束是PER可见。