我对 XML Schema 完全陌生,并且正在尝试阅读我们为 xsd 元素所拥有的不同模型的语法。
例如,这是 CompleyType 的模型(语法)
<complexType
abstract = Boolean : false
block = (#all | List of (extension | restriction))
final = (#all | List of (extension | restriction))
id = ID
mixed = Boolean : false
name = NCName
{any attributes with non-schema Namespace...}>
Content: (annotation?, (simpleContent | complexContent | ((group | all |
choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?))))
</complexType>
但是对我来说很难阅读,所以我会分解它并从几种语法和它的可能性开始,如果有人能检查它会很棒。
The Syntax (a1?,a2?)
这是否意味着我有这种可能性?(未证明)
(a1,a2)
(a1)
(a2)
(empty)
语法
(a1|a2)?
这是否意味着我有这种可能性?(我证明了)
(a1)
(a2)
(empty)
语法
(a1*,a2*)
这是否意味着我有这种可能性?(未证明)
(a1,a1,a2,a2)
(a2,a2)
(a1,a1)
(a1)
(a2)
(empty)
语法
(a1|a2)*
这是否意味着我有这种可能性?(已证明)上面的 (a1*,a2*) 是否具有相同的可能性?
(a1,a1,a2,a2)
(a2,a2)
(a1,a1)
(a1)
(a2)
(empty)
语法
(a1|a2)
这是否意味着我有这种可能性?(证明)
(a1)
(a2)
语法
(a1,a2)
这是否意味着我有这种可能性?(未证明)
(a1,a2)