source: metadata/trunk/toolkit/example/example-md-schema.xsd @ 72

Last change on this file since 72 was 72, checked in by dietuyt, 15 years ago

Major revision of the toolkit. Changes:

  • Added a fixed choice for the ResourceType? element under ResourceProxy?
  • Now use the XML datatype Name for all component and element names
  • addition of new ValueSchemes?: date, gDay, gMonth, gYear, time
  • addition of Header elements for CMD and CMD_ComponentSpec
  • comp2schema.xsl now inserts the ComponentId? in the XSD, so that the

metadata instances will now contain a ComponentId? (when specified)

  • Property svn:executable set to *
File size: 13.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dcr="http://www.isocat.org">
3   <xs:simpleType name="simpletype-TextTMD-Format">
4      <xs:restriction base="xs:string">
5         <xs:enumeration value="text/plain" dcr:datcat="http://www.isocat.org/datcat/DC-000"/>
6         <xs:enumeration value="text/html" dcr:datcat="http://www.isocat.org/datcat/DC-000"/>
7      </xs:restriction>
8   </xs:simpleType>
9   <xs:complexType name="complextype-TextTMD-Format">
10      <xs:simpleContent>
11         <xs:extension base="simpletype-TextTMD-Format"/>
12      </xs:simpleContent>
13   </xs:complexType>
14   <xs:simpleType name="simpletype-TextTMD-TextType-TextTypeDescription">
15      <xs:restriction base="xs:string">
16         <xs:enumeration value="print"/>
17         <xs:enumeration value="manuscript"/>
18      </xs:restriction>
19   </xs:simpleType>
20   <xs:complexType name="complextype-TextTMD-TextType-TextTypeDescription">
21      <xs:simpleContent>
22         <xs:extension base="simpletype-TextTMD-TextType-TextTypeDescription"/>
23      </xs:simpleContent>
24   </xs:complexType>
25   <xs:simpleType name="simpletype-PhotoTMD-Format">
26      <xs:restriction base="xs:string">
27         <xs:enumeration value="image/jpeg" dcr:datcat="http://www.isocat.org/datcat/DC-000"/>
28         <xs:enumeration value="image/png" dcr:datcat="http://www.isocat.org/datcat/DC-000"/>
29      </xs:restriction>
30   </xs:simpleType>
31   <xs:complexType name="complextype-PhotoTMD-Format">
32      <xs:simpleContent>
33         <xs:extension base="simpletype-PhotoTMD-Format"/>
34      </xs:simpleContent>
35   </xs:complexType>
36   <xs:simpleType name="simpletype-Actor-sex">
37      <xs:restriction base="xs:string">
38         <xs:enumeration value="male" dcr:datcat="http://www.isocat.org/datcat/CMD-0010"/>
39         <xs:enumeration value="female" dcr:datcat="http://www.isocat.org/datcat/CMD-001"/>
40      </xs:restriction>
41   </xs:simpleType>
42   <xs:complexType name="complextype-Actor-sex">
43      <xs:simpleContent>
44         <xs:extension base="simpletype-Actor-sex"/>
45      </xs:simpleContent>
46   </xs:complexType>
47   <xs:simpleType name="simpletype-Actor-age">
48      <xs:restriction base="xs:string">
49         <xs:pattern value="([0-9]+)*(;[0-9]+)*(.[0-9]+)"/>
50      </xs:restriction>
51   </xs:simpleType>
52   <xs:complexType name="complextype-Actor-age">
53      <xs:simpleContent>
54         <xs:extension base="simpletype-Actor-age"/>
55      </xs:simpleContent>
56   </xs:complexType>
57   <xs:element name="CMD">
58      <xs:complexType>
59         <xs:sequence>
60            <xs:element name="Header">
61               <xs:complexType>
62                  <xs:sequence>
63                     <xs:element name="MdCreator" type="xs:string" minOccurs="0"/>
64                     <xs:element name="MdCreationDate" type="xs:date" minOccurs="0"/>
65                     <xs:element name="MdSelfLink" type="xs:anyURI" minOccurs="0"/>
66                     <xs:element name="MdProfile" type="xs:anyURI" minOccurs="0"/>
67                  </xs:sequence>
68               </xs:complexType>
69            </xs:element>
70            <xs:element name="Resources">
71               <xs:complexType>
72                  <xs:sequence>
73                     <xs:element name="ResourceProxyList">
74                        <xs:complexType>
75                           <xs:sequence>
76                              <xs:element maxOccurs="unbounded" minOccurs="0" name="ResourceProxy">
77                                 <xs:complexType>
78                                    <xs:sequence>
79                                       <xs:element maxOccurs="1" minOccurs="1" name="ResourceType">
80                                          <xs:simpleType>
81                                             <xs:restriction base="xs:string">
82                                                <xs:enumeration value="Metadata">
83                                                   <xs:annotation>
84                                                      <xs:documentation>The ResourceProxy
85                                                  refers to another component
86                                                  metadata instance (e.g. for
87                                                  grouping metadata descriptions
88                                                  into
89                                                  collections)</xs:documentation>
90                                                   </xs:annotation>
91                                                </xs:enumeration>
92                                                <xs:enumeration value="Resource">
93                                                   <xs:annotation>
94                                                      <xs:documentation>The ResourceProxy
95                                                  refers to a file that is not a
96                                                  metadata instance (e.g. a text
97                                                  document)</xs:documentation>
98                                                   </xs:annotation>
99                                                </xs:enumeration>
100                                             </xs:restriction>
101                                          </xs:simpleType>
102                                       </xs:element>
103                                       <xs:element maxOccurs="1" minOccurs="1" name="ResourceRef" type="xs:anyURI"/>
104                                    </xs:sequence>
105                                    <xs:attribute name="id" type="xs:ID" use="required"/>
106                                 </xs:complexType>
107                              </xs:element>
108                           </xs:sequence>
109                        </xs:complexType>
110                     </xs:element>
111                     <xs:element name="JournalFileProxyList">
112                        <xs:complexType>
113                           <xs:sequence>
114                              <xs:element maxOccurs="unbounded" minOccurs="0" name="JournalFileProxy">
115                                 <xs:complexType>
116                                    <xs:sequence>
117                                       <xs:element maxOccurs="1" minOccurs="1" name="JournalFileRef" type="xs:anyURI"/>
118                                    </xs:sequence>
119                                 </xs:complexType>
120                              </xs:element>
121                           </xs:sequence>
122                        </xs:complexType>
123                     </xs:element>
124                     <xs:element name="ResourceRelationList">
125                        <xs:complexType>
126                           <xs:sequence>
127                              <xs:element maxOccurs="unbounded" minOccurs="0" name="ResourceRelation">
128                                 <xs:complexType>
129                                    <xs:sequence>
130                                       <xs:element maxOccurs="1" minOccurs="1" name="RelationType"/>
131                                       <xs:element maxOccurs="1" minOccurs="1" name="Res1">
132                                          <xs:complexType>
133                                             <xs:attribute name="ref" type="xs:IDREF"/>
134                                          </xs:complexType>
135                                       </xs:element>
136                                       <xs:element maxOccurs="1" minOccurs="1" name="Res2">
137                                          <xs:complexType>
138                                             <xs:attribute name="ref" type="xs:IDREF"/>
139                                          </xs:complexType>
140                                       </xs:element>
141                                    </xs:sequence>
142                                 </xs:complexType>
143                              </xs:element>
144                           </xs:sequence>
145                        </xs:complexType>
146                     </xs:element>
147                  </xs:sequence>
148               </xs:complexType>
149            </xs:element>
150            <xs:element name="Components">
151               <xs:complexType>
152                  <xs:sequence>
153                     <xs:element name="TextTMD" dcr:datcat="http://www.isocat.org/datcat/CMD-000">
154                        <xs:complexType>
155                           <xs:sequence>
156                              <xs:element name="Format" dcr:datcat="http://www.isocat.org/datcat/DC-1758" minOccurs="0"
157                                          maxOccurs="1"
158                                          type="complextype-TextTMD-Format"/>
159                              <xs:element name="TextType" dcr:datcat="http://www.isocat.org/datcat/CMD-000">
160                                 <xs:complexType>
161                                    <xs:sequence>
162                                       <xs:element name="TextTypeDescription" dcr:datcat="http://www.isocat.org/datcat/DC-1758"
163                                                   minOccurs="0"
164                                                   maxOccurs="1"
165                                                   type="complextype-TextTMD-TextType-TextTypeDescription"/>
166                                    </xs:sequence>
167                                    <xs:attribute name="ref" type="xs:IDREF"/>
168                                 </xs:complexType>
169                              </xs:element>
170                           </xs:sequence>
171                           <xs:attribute name="ref" type="xs:IDREF"/>
172                           <xs:attribute name="ComponentId" type="xs:anyURI"
173                                         fixed="http://www.clarin.eu/cmd/example/example-component-text.xml"/>
174                        </xs:complexType>
175                     </xs:element>
176                     <xs:element name="PhotoTMD" minOccurs="1" maxOccurs="unbounded"
177                                 dcr:datcat="http://www.isocat.org/datcat/CMD-000">
178                        <xs:complexType>
179                           <xs:sequence>
180                              <xs:element name="Format" dcr:datcat="http://www.isocat.org/datcat/DC-1758" minOccurs="0"
181                                          maxOccurs="1"
182                                          type="complextype-PhotoTMD-Format"/>
183                           </xs:sequence>
184                           <xs:attribute name="ref" type="xs:IDREF"/>
185                        </xs:complexType>
186                     </xs:element>
187                     <xs:element name="Actor" minOccurs="0" maxOccurs="4">
188                        <xs:complexType>
189                           <xs:sequence>
190                              <xs:element name="firstName">
191                                 <xs:complexType>
192                                    <xs:simpleContent>
193                                       <xs:extension base="xs:string">
194                                          <xs:attribute name="nickname" type="xs:string"/>
195                                          <xs:attribute name="suffix">
196                                             <xs:simpleType>
197                                                <xs:restriction base="xs:string">
198                                                   <xs:enumeration value="senior" dcr:datcat="http://www.isocat.org/datcat/CMD-001"/>
199                                                   <xs:enumeration value="junior" dcr:datcat="http://www.isocat.org/datcat/CMD-002"/>
200                                                </xs:restriction>
201                                             </xs:simpleType>
202                                          </xs:attribute>
203                                       </xs:extension>
204                                    </xs:simpleContent>
205                                 </xs:complexType>
206                              </xs:element>
207                              <xs:element name="lastName" type="xs:string"/>
208                              <xs:element name="sex" dcr:datcat="http://www.isocat.org/datcat/CMD-000"
209                                          type="complextype-Actor-sex"/>
210                              <xs:element name="age" dcr:datcat="http://www.isocat.org/datcat/CMD-000"
211                                          type="complextype-Actor-age"/>
212                              <xs:element name="ActorLanguage" minOccurs="0" maxOccurs="unbounded"
213                                          dcr:datcat="http://www.isocat.org/datcat/CMD-000">
214                                 <xs:complexType>
215                                    <xs:sequence>
216                                       <xs:element name="ActorLanguageName" type="xs:string"
217                                                   dcr:datcat="http://www.isocat.org/datcat/DC-1766"/>
218                                    </xs:sequence>
219                                    <xs:attribute name="ref" type="xs:IDREF"/>
220                                 </xs:complexType>
221                              </xs:element>
222                           </xs:sequence>
223                           <xs:attribute name="ref" type="xs:IDREF"/>
224                           <xs:attribute name="ComponentId" type="xs:anyURI" fixed="eu.clarin.mdcomponent.actor"/>
225                        </xs:complexType>
226                     </xs:element>
227                  </xs:sequence>
228               </xs:complexType>
229            </xs:element>
230         </xs:sequence>
231      </xs:complexType>
232   </xs:element>
233</xs:schema>
Note: See TracBrowser for help on using the repository browser.