Imported Upstream version 2.8.0
[platform/upstream/libxml2.git] / test / schemas / subst-group-1_0.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Test for bug #341150 -->
3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >
4
5   <!-- This is the head of our substitution group for events that have only
6         simple content. -->
7   <xs:element name="SimpleEvent" type="SimpleEventType"/>
8
9   <!-- All SimpleEvent elements have the required set of attributes -->
10   <xs:complexType name="SimpleEventType">
11     <xs:simpleContent>
12       <xs:extension base="xs:anySimpleType">
13       </xs:extension>
14     </xs:simpleContent>
15   </xs:complexType>  
16
17   <!-- Common members of the SimpleEvent substitution group -->
18   <xs:element name="TestEvent" substitutionGroup="SimpleEvent">
19     <xs:complexType>
20       <xs:simpleContent>
21         <xs:restriction base="SimpleEventType">
22           <xs:simpleType>
23             <xs:restriction base="xs:string"/>
24           </xs:simpleType>
25         </xs:restriction>
26       </xs:simpleContent>
27     </xs:complexType>
28   </xs:element>
29
30   <!-- Root element -->
31   <xs:element name="TestRoot" type="TestRootType"/>
32
33   <!-- Core data type of an audit trail -->
34   <xs:complexType name="TestRootType">
35     <xs:sequence>
36       <xs:element name="Events">
37         <xs:complexType>
38           <xs:choice minOccurs="0" maxOccurs="unbounded">
39             <xs:element ref="SimpleEvent"/>
40           </xs:choice>
41         </xs:complexType>
42       </xs:element>
43     </xs:sequence>
44   </xs:complexType>
45 </xs:schema>