ГОСТ Р ИСО/МЭК 8825-5— 2013
</xsd:complexContent>
</xsd:complexType>
Эти сложные определения типа отображаются в следующие присвоения типа АСН.1:
MyComplexTуре-17 ::= SEQUENCE {
а1 [ATTRIBUTE] XSD.String OPTIONAL.
a2 [ATTRIBUTE] XSD.String OPTIONAL.
a3 [ATTRIBUTE] XSD.Decimal OPTIONAL,
a4 [ATTRIBUTE] BOOLEAN OPTIONAL.
a5 [ATTRIBUTE] BOOLEAN OPTIONAL }
MyComplexType-18SEQUENCE {
a2 [ATTRIBUTE] XSD.String OPTIONAL.
a3 [ATTRIBUTE] INTEGER OPTIONAL,
a5 [ATTRIBUTE] BOOLEAN OPTIONAL }
D.3.8.6 Выведение сложных определений типа.
<xsd:complexType name="MyComplexType-19”>
<xsd:sequence minOccurs="0" maxOccurs=”unbounded">
<xsd:element name="a" type=”xsd:string’7>
<xsd:element nan>e=”b” type=”xsd:boolean’7>
<xsd:element name="c” type="xsd:boolean” minOccurs=”0"/>
</xsd:sequence>
<xsd:attribute name="attrT’ type=“xsd:short" use=”required’’/>
<xsd:attribute name="attr2" type="xsd:short”/>
</xsd:complexType>
<xsd:complexType name="MyComplexType-20”>
<xsd:complexContent>
<xsd:restriction base="MyComplexType-19">
<xsd:sequence>
<xsd:element name="a" type="xsd:token"/>
<xsd:element name="b" type=”xsd:boolean‘7>
</xsd:sequence>
<xsd:attribute name=”attr2" type="xsd:short” use=”prohibited"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="MyComplexType-21”>
<xsd:complexContent>
<xsd:extension base="MyComplexType-20">
<xsd:sequence>
<xsd:element name="d" type="xsd:string"/>
</xsd:sequence>
<xsd:attribute name="attr3" type="xsd:boolean”/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
Эти сложные определения типа отображаются в следующие присвоения типа АСН.1:
MyCoeiplexType -19 ::■SEQOENCE {
[ATTRIBUTE] XSD.Short,
[ATTRIBUTE] XSD.ShortOPTIONAL,
[UNTAGGED] SEQOENCE OF [UNTAGGED] SEQUENCE
attrl
attr2
sequence-list
(
a
b
XSD.String,
BOOLEAN,
c
BOOLEAN OPTIONAL ] ]
MyCoeiplexType -2 0 ::« SEQUENCE {
attrl[ATTRIBUTE] XSD.Short,
a XSD.Token,
b BOOLEAN }
MyCoeiplexType -21 ::■ SEQUENCE {
attrl[ATTRIBUTE] XSD.Short,
attr3[ATTRIBUTE] BOOLEAN OPTIONAL,
a XSD.String,
bBOOLEAN,
dXSD.String )
67