1 <?xml version="1.0" encoding="UTF-8"?>
3 Copyright (c) 2000-2015 Ericsson Telecom AB
5 All rights reserved. This program and the accompanying materials
6 are made available under the terms of the Eclipse Public License v1.0
7 which accompanies this distribution, and is available at
8 http://www.eclipse.org/legal/epl-v10.html
10 <schema xmlns="http://www.w3.org/2001/XMLSchema"
11 xmlns:ns="www.example.org"
12 targetNamespace="www.example.org">
15 <documentation xml:lang="EN">
16 It is not allowed to extend groups and complex types with the constructor all and the extending type shall not be all either
20 <annotation><documentation xml:lang="EN">base types</documentation></annotation>
22 <complexType name="e25seq">
24 <element name="titleElemBase" type="string"/>
25 <element name="forenameElemBase" type="string"/>
26 <element name="surnameElemBase" type="string"/>
28 <attribute name="genderAttrBase" type="integer"/>
29 <attributeGroup ref="ns:g25attr2"/>
32 <complexType name="e25seqRecurrence">
33 <sequence minOccurs="0" maxOccurs="unbounded">
34 <element name="titleElemBase" type="string"/>
35 <element name="forenameElemBase" type="string"/>
36 <element name="surnameElemBase" type="string"/>
38 <attribute name="genderAttrBase" type="integer"/>
39 <attributeGroup ref="ns:g25attr2"/>
42 <complexType name="e25empty">
47 <complexType name="e25cho">
49 <element name="titleElemBase" type="string"/>
50 <element name="forenameElemBase" type="string"/>
51 <element name="surnameElemBase" type="string"/>
53 <attribute name="genderAttrBase" type="string"/>
57 <complexType name="e25all">
59 <element name="titleElemBase" type="string"/>
60 <element name="forenameElemBase" type="string"/>
61 <element name="surnameElemBase" type="string"/>
63 <attribute name="genderAttrBase" type="float"/>
66 <annotation><documentation xml:lang="EN">groups and attributeGroups</documentation></annotation>
70 <element name="familyStatusElemInGroup" type="string"/>
71 <element name="spouseElemInGroup" type="string" minOccurs="0"/>
75 <attributeGroup name="g25attr1">
76 <attribute name="birthPlaceAttrGroup" type="string"/>
77 <attribute name="birthDateAttrGroup" type="string"/>
80 <attributeGroup name="g25attr2">
81 <attribute name="jobPositionAttrGroup" type="string"/>
86 <element name="birthDateElemInGroup" type="string"/>
87 <element name="birthPlaceElemInGroup" type="string"/>
91 <annotation><documentation xml:lang="EN">EXTENDING TYPES</documentation></annotation>
93 <annotation><documentation xml:lang="EN">dummy extension of an empty type</documentation></annotation>
94 <complexType name="e26nullSeq">
96 <extension base="ns:e25empty">
104 <documentation xml:lang="EN">base:sequence, extending:sequence, containing attributeGroup and group</documentation></annotation>
105 <complexType name="e26seq">
107 <extension base="ns:e25seq">
109 <element name="ageElemExt" type="integer"/>
110 <group ref="ns:g25seq"/>
112 <attribute name="unitAttrExt" type="string"/>
113 <attributeGroup ref="ns:g25attr1"/>
118 <complexType name="e26seqElemRevOrder">
120 <extension base="ns:e25seq">
122 <group ref="ns:g25cho"/>
123 <element name="ageElemExt" type="integer"/>
125 <attribute name="unitAttrExt" type="string"/>
130 <complexType name="e26seqRecurrence">
132 <extension base="ns:e25seq">
133 <sequence minOccurs="0" maxOccurs="unbounded">
134 <group ref="ns:g25cho"/>
135 <element name="ageElemExt" type="integer"/>
137 <attribute name="unitAttrExt" type="string"/>
142 <complexType name="e26seqDoubleRecurrence">
144 <extension base="ns:e25seqRecurrence">
145 <sequence minOccurs="0" maxOccurs="unbounded">
146 <group ref="ns:g25cho"/>
147 <element name="ageElemExt" type="integer"/>
149 <attribute name="unitAttrExt" type="string"/>
154 <annotation><documentation xml:lang="EN">base:choice, extending:choice</documentation></annotation>
155 <complexType name="e26cho">
157 <extension base="ns:e25cho">
159 <element name="ageElemExt" type="integer"/>
160 <element name="birthdayElemExt" type="date"/>
162 <attribute name="unitAttrExt" type="string"/>
169 <annotation><documentation xml:lang="EN">base:sequence, extending:choice</documentation></annotation>
170 <complexType name="e27cho">
172 <extension base="ns:e25seq">
174 <element name="ageElemExt" type="integer"/>
175 <element name="birthdayElemExt" type="date"/>
177 <attribute name="unitAttrExt" type="string"/>
182 <annotation><documentation xml:lang="EN">base:choice, extending:sequence</documentation></annotation>
183 <complexType name="e27seq">
185 <extension base="ns:e25cho">
187 <element name="ageElemExt" type="integer"/>
189 <attribute name="unitAttrExt" type="string"/>
195 <annotation><documentation xml:lang="EN">base:all, extending:sequence --- not allowed!
196 <complexType name="e26g">
198 <extension base="ns:e25all">
200 <element name="age" type="integer"/>
205 </documentation></annotation>