Imported Upstream version 2.8.0
[platform/upstream/libxml2.git] / test / schemas / vdv-first5_0.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!-- $Header: /home/cvsroot/w3c-xml-schema/user/examples/first-building-blocks.xsd,v 1.1 2001/11/26 13:27:07 vdv Exp $ -->\r
3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">\r
4 \r
5 <xs:include schemaLocation="vdv-simpleTypes.xsd"/>\r
6 <xs:include schemaLocation="vdv-complexTypes.xsd"/>\r
7 \r
8         <xs:element name="name" type="string32"/>\r
9         <xs:element name="qualification" type="string255"/>\r
10         <xs:element name="born" type="date"/>\r
11         <xs:element name="dead" type="date"/>\r
12         <xs:element name="isbn" type="isbn"/>\r
13         \r
14         <xs:attribute name="id" type="xs:ID"/>\r
15         <xs:attribute name="available" type="xs:boolean"/>\r
16         <xs:attribute name="lang" type="supportedLanguages"/>\r
17 \r
18                 \r
19         <xs:element name="title">\r
20                 <xs:complexType>\r
21                         <xs:simpleContent>\r
22                                 <xs:extension base="string255">\r
23                                         <xs:attribute ref="lang"/>\r
24                                 </xs:extension>\r
25                         </xs:simpleContent>\r
26                 </xs:complexType>\r
27         </xs:element>\r
28         \r
29         <xs:element name="library">\r
30                 <xs:complexType>\r
31                         <xs:sequence>\r
32                                 <xs:element ref="book" maxOccurs="unbounded"/>\r
33                         </xs:sequence>\r
34                 </xs:complexType>\r
35         </xs:element>\r
36         \r
37         <xs:element name="book">\r
38                                         <xs:complexType>\r
39                                                                         <xs:complexContent>\r
40                                                                                                         <xs:restriction base="bookTmp">\r
41                         <xs:sequence>\r
42                                 <xs:element ref="isbn"/>\r
43                                 <xs:element ref="title"/>\r
44                                 <xs:element ref="author" minOccurs="0" maxOccurs="unbounded"/>\r
45                                 <xs:element ref="character" minOccurs="0" maxOccurs="unbounded"/>\r
46                         </xs:sequence>\r
47                         <xs:attribute name="id" type="bookID"/>\r
48                         <xs:attribute ref="available"/>\r
49                                                                                                         </xs:restriction>\r
50                                                                         </xs:complexContent>\r
51                 </xs:complexType>\r
52         </xs:element>\r
53 \r
54         <xs:element name="author">\r
55                                         <xs:complexType>\r
56                                                                         <xs:complexContent>\r
57                                                                                                         <xs:restriction base="personType">\r
58                         <xs:sequence>\r
59                                 <xs:element ref="name"/>\r
60                                 <xs:element ref="born"/>\r
61                                 <xs:element ref="dead" minOccurs="0"/>\r
62                         </xs:sequence>\r
63                         <xs:attribute ref="id"/>\r
64                                                                                                         </xs:restriction>\r
65                                                                         </xs:complexContent>\r
66                 </xs:complexType>\r
67         </xs:element>\r
68         \r
69         \r
70         <xs:element name="character">\r
71                 <xs:complexType>\r
72                                                                         <xs:complexContent>\r
73                                                                                                         <xs:restriction base="personType">\r
74                         <xs:sequence>\r
75                                 <xs:element ref="name"/>\r
76                                 <xs:element ref="born"/>\r
77                                 <xs:element ref="qualification"/>\r
78                         </xs:sequence>\r
79                         <xs:attribute ref="id"/>\r
80                                                                                                         </xs:restriction>\r
81                                                                         </xs:complexContent>\r
82                 </xs:complexType>\r
83         </xs:element>\r
84         \r
85 </xs:schema>\r