在 ASN.1 中,某些类型具有相同类型的值表示法。例如,该值'ABCD'H
是可以表示OCTET STRING
类型或BIT STRING
类型的十六进制字符串。类似地,值10
是一个可以是INTEGER
类型或REAL
类型的数字。但是如果我们给一个变量赋值,那么我们可以在赋值表达式中使用该变量来获得兼容的类型吗?
例如:
MySchema DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
x OCTET STRING ::= 'ABCD'H
y BIT STRING ::= x -- is this valid?
i INTEGER ::= 10
r REAL ::= i -- is this valid?
END
ASN.1 的至少一种实现在这里给出了错误消息。但我找不到实际标准对此有何评论。