Online Flora XML Schema

From Hiscom
Jump to navigation Jump to search


An XML Schema for an on-line Flora:

  1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2 <!--W3C Schema generated by XMLSpy v2005 rel. 3 U (http://www.altova.com)-->
  3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  4 	<xs:element name="author">
  5 		<xs:simpleType>
  6 			<xs:restriction base="xs:string"/>
  7 		</xs:simpleType>
  8 	</xs:element>
  9 	<xs:element name="chromosome">
 10 		<xs:simpleType>
 11 			<xs:restriction base="xs:string">
 12 				
 13 			</xs:restriction>
 14 		</xs:simpleType>
 15 	</xs:element>
 16 	<xs:complexType name="conservationType">
 17 		<xs:sequence>
 18 			<xs:element ref="conservation_status_description"/>
 19 			<xs:element ref="conservation_status_code"/>
 20 			<xs:element ref="conservation_legislative"/>
 21 		</xs:sequence>
 22 	</xs:complexType>
 23 	<xs:element name="conservation_legislative">
 24 		<xs:simpleType>
 25 			<xs:restriction base="xs:string">
 26 				<xs:enumeration value="EPBC Act"/>
 27 				<xs:enumeration value="other Acts"/>
 28 			</xs:restriction>
 29 		</xs:simpleType>
 30 	</xs:element>
 31 	<xs:element name="conservation_status_code">
 32 		<xs:simpleType>
 33 			<xs:restriction base="xs:string">
 34 				<xs:enumeration value="3W"/>
 35 				<xs:enumeration value="Other codes"/>
 36 			</xs:restriction>
 37 		</xs:simpleType>
 38 	</xs:element>
 39 	<xs:element name="conservation_status_description">
 40 		<xs:simpleType>
 41 			<xs:restriction base="xs:string">
 42 				<xs:enumeration value="Very rare"/>
 43 				<xs:enumeration value="Other descriptors"/>
 44 			</xs:restriction>
 45 		</xs:simpleType>
 46 	</xs:element>
 47 	<xs:element name="contributor">
 48 		<xs:simpleType>
 49 			<xs:restriction base="xs:string">
 50 			</xs:restriction>
 51 		</xs:simpleType>
 52 	</xs:element>
 53 	<xs:element name="date">
 54 		<xs:simpleType>
 55 			<xs:restriction base="xs:string"/>
 56 		</xs:simpleType>
 57 	</xs:element>
 58 	<xs:complexType name="descriptionType">
 59 		<xs:sequence>
 60 			<xs:element name="description_full" type="description_fullType"/>
 61 			<xs:element name="description_elements" type="description_elementsType"/>
 62 			<xs:element ref="description_diagnostic"/>
 63 		</xs:sequence>
 64 	</xs:complexType>
 65 	<xs:element name="description_bark" type="xs:string"/>
 66 	<xs:element name="description_diagnostic" type="xs:string"/>
 67 	<xs:complexType name="description_elementsType">
 68 		<xs:sequence>
 69 			<xs:element ref="description_habit"/>
 70 			<xs:element ref="description_leaves"/>
 71 			<xs:element ref="description_inflorescence"/>
 72 			<xs:element ref="description_fruit"/>
 73 			<xs:element ref="description_flowers"/>
 74 			<xs:element ref="description_ovary"/>
 75 			<xs:element ref="description_roots"/>
 76 			<xs:element ref="description_bark"/>
 77 		</xs:sequence>
 78 	</xs:complexType>
 79 	<xs:element name="description_flowers" type="xs:string"/>
 80 	<xs:element name="description_fruit" type="xs:string"/>
 81 	<xs:complexType name="description_fullType" mixed="true">
 82 		<xs:choice minOccurs="0" maxOccurs="unbounded">
 83 			<xs:element ref="i"/>
 84 		</xs:choice>
 85 	</xs:complexType>
 86 	<xs:element name="description_habit" type="xs:string"/>
 87 	<xs:element name="description_inflorescence" type="xs:string"/>
 88 	<xs:element name="description_leaves" type="xs:string"/>
 89 	<xs:element name="description_ovary" type="xs:string"/>
 90 	<xs:element name="description_roots" type="xs:string"/>
 91 	<xs:complexType name="distributionType">
 92 		<xs:sequence>
 93 			<xs:element name="distribution_regional" type="distribution_regionalType"/>
 94 			<xs:element ref="distribution_no_taxa"/>
 95 		</xs:sequence>
 96 	</xs:complexType>
 97 	<xs:element name="distribution_no_taxa" type="xs:string"/>
 98 	<xs:complexType name="distribution_regionalType" mixed="true">
 99 		<xs:choice minOccurs="0" maxOccurs="unbounded">
100 			<xs:element ref="i"/>
101 		</xs:choice>
102 	</xs:complexType>
103 	<xs:element name="genus">
104 		<xs:simpleType>
105 			<xs:restriction base="xs:string"/>
106 		</xs:simpleType>
107 	</xs:element>
108 	<xs:element name="group">
109 		<xs:complexType>
110 			<xs:sequence>
111 				<xs:element name="taxon" type="taxonType"/>
112 			</xs:sequence>
113 			<xs:attribute name="name" use="required">
114 				<xs:simpleType>
115 					<xs:restriction base="xs:string">
116 
117 					</xs:restriction>
118 				</xs:simpleType>
119 			</xs:attribute>
120 		</xs:complexType>
121 	</xs:element>
122 	<xs:element name="habitat">
123 		<xs:simpleType>
124 			<xs:restriction base="xs:string">
125 				
126 			</xs:restriction>
127 		</xs:simpleType>
128 	</xs:element>
129 	<xs:element name="i">
130 		<xs:simpleType>
131 			<xs:restriction base="xs:string">
132 			</xs:restriction>
133 		</xs:simpleType>
134 	</xs:element>
135 	<xs:complexType name="identificationType">
136 		<xs:sequence minOccurs="0">
137 			<xs:element ref="key_title" minOccurs="0"/>
138 			<xs:element ref="key_contributor" minOccurs="0"/>
139 			<xs:element ref="key_note_front" minOccurs="0" maxOccurs="unbounded"/>
140 			<xs:element name="key" type="keyType" minOccurs="0"/>
141 			<xs:element name="key_note_end" type="key_note_endType" minOccurs="0" maxOccurs="unbounded"/>
142 		</xs:sequence>
143 	</xs:complexType>
144 	<xs:element name="image_identifier" type="xs:string"/>
145 	<xs:element name="image_url" type="xs:string"/>
146 	<xs:complexType name="imagesType">
147 		<xs:sequence>
148 			<xs:element ref="image_identifier"/>
149 			<xs:element ref="image_url"/>
150 		</xs:sequence>
151 	</xs:complexType>
152 	<xs:element name="kd">
153 		<xs:simpleType>
154 			<xs:restriction base="xs:string">
155 			</xs:restriction>
156 		</xs:simpleType>
157 	</xs:element>
158 	<xs:complexType name="keyType">
159 		<xs:sequence minOccurs="0">
160 			<xs:element name="kr" type="krType" minOccurs="0" maxOccurs="unbounded"/>
161 		</xs:sequence>
162 	</xs:complexType>
163 	<xs:element name="key_contributor">
164 		<xs:simpleType>
165 			<xs:restriction base="xs:string">
166 				
167 			</xs:restriction>
168 		</xs:simpleType>
169 	</xs:element>
170 	<xs:complexType name="key_note_endType" mixed="true">
171 		<xs:choice minOccurs="0" maxOccurs="unbounded">
172 			<xs:element ref="i"/>
173 		</xs:choice>
174 	</xs:complexType>
175 	<xs:element name="key_note_front">
176 		<xs:simpleType>
177 			<xs:restriction base="xs:string">
178 				
179 			</xs:restriction>
180 		</xs:simpleType>
181 	</xs:element>
182 	<xs:element name="key_rank">
183 		<xs:simpleType>
184 			<xs:restriction base="xs:string">
185 				<xs:enumeration value="gen."/>
186 				<xs:enumeration value="sp."/>
187 			</xs:restriction>
188 		</xs:simpleType>
189 	</xs:element>
190 	<xs:element name="key_seq">
191 		<xs:simpleType>
192 			<xs:restriction base="xs:string">
193 				
194 			</xs:restriction>
195 		</xs:simpleType>
196 	</xs:element>
197 	<xs:element name="key_title">
198 		<xs:simpleType>
199 			<xs:restriction base="xs:string">
200 				
201 			</xs:restriction>
202 		</xs:simpleType>
203 	</xs:element>
204 	<xs:element name="key_to">
205 		<xs:simpleType>
206 			<xs:restriction base="xs:byte">
207 				
208 			</xs:restriction>
209 		</xs:simpleType>
210 	</xs:element>
211 	<xs:element name="kn">
212 		<xs:simpleType>
213 			<xs:restriction base="xs:string">
214 			
215 			</xs:restriction>
216 		</xs:simpleType>
217 	</xs:element>
218 	<xs:complexType name="krType">
219 		<xs:sequence minOccurs="0">
220 			<xs:element ref="kn" minOccurs="0"/>
221 			<xs:element ref="kd" minOccurs="0"/>
222 			<xs:element ref="key_to" minOccurs="0"/>
223 			<xs:element ref="key_seq" minOccurs="0"/>
224 			<xs:element ref="kt_symbol" minOccurs="0"/>
225 			<xs:element ref="key_rank" minOccurs="0"/>
226 			<xs:element ref="kt" minOccurs="0"/>
227 			<xs:element name="kt_extra" type="kt_extraType" minOccurs="0"/>
228 		</xs:sequence>
229 	</xs:complexType>
230 	<xs:element name="kt">
231 		<xs:simpleType>
232 			<xs:restriction base="xs:string">
233 				
234 			</xs:restriction>
235 		</xs:simpleType>
236 	</xs:element>
237 	<xs:complexType name="kt_extraType">
238 		<xs:sequence minOccurs="0">
239 			<xs:element ref="i" minOccurs="0"/>
240 		</xs:sequence>
241 	</xs:complexType>
242 	<xs:element name="kt_symbol">
243 		<xs:simpleType>
244 			<xs:restriction base="xs:string">
245 				<xs:enumeration value="†"/>
246 			</xs:restriction>
247 		</xs:simpleType>
248 	</xs:element>
249 	<xs:element name="licence">
250 		<xs:simpleType>
251 			<xs:restriction base="xs:string">
252 				
253 			</xs:restriction>
254 		</xs:simpleType>
255 	</xs:element>
256 	<xs:element name="name">
257 		<xs:simpleType>
258 			<xs:restriction base="xs:string"/>
259 		</xs:simpleType>
260 	</xs:element>
261 	<xs:complexType name="name_infoType">
262 		<xs:sequence>
263 			<xs:element ref="rank"/>
264 			<xs:element ref="parent" minOccurs="0"/>
265 			<xs:element ref="genus" minOccurs="0"/>
266 			<xs:element ref="rank_qualified" minOccurs="0"/>
267 			<xs:element ref="qualifier" minOccurs="0"/>
268 			<xs:element ref="name"/>
269 			<xs:element ref="author" minOccurs="0"/>
270 			<xs:element name="protologue" type="protologueType" minOccurs="0"/>
271 		</xs:sequence>
272 	</xs:complexType>
273 	<xs:complexType name="noteType" mixed="true">
274 		<xs:choice minOccurs="0" maxOccurs="unbounded">
275 			<xs:element ref="note_fire"/>
276 			<xs:element ref="i"/>
277 		</xs:choice>
278 		<xs:attribute name="kind" use="required">
279 			<xs:simpleType>
280 				<xs:restriction base="xs:string">
281 					<xs:enumeration value="agricultural"/>
282 					<xs:enumeration value="biology"/>
283 					<xs:enumeration value="contributor"/>
284 					<xs:enumeration value="ecology"/>
285 					<xs:enumeration value="habit"/>
286 					<xs:enumeration value="host_parasite"/>
287 					<xs:enumeration value="key"/>
288 					<xs:enumeration value="misc"/>
289 					<xs:enumeration value="morphology"/>
290 					<xs:enumeration value="name"/>
291 					<xs:enumeration value="protologue"/>
292 					<xs:enumeration value="taxonomic"/>
293 				</xs:restriction>
294 			</xs:simpleType>
295 		</xs:attribute>
296 	</xs:complexType>
297 	<xs:element name="note_fire" type="xs:string"/>
298 	<xs:element name="parent">
299 		<xs:simpleType>
300 			<xs:restriction base="xs:string"/>
301 		</xs:simpleType>
302 	</xs:element>
303 	<xs:element name="phenology">
304 		<xs:simpleType>
305 			<xs:restriction base="xs:string">
306 			
307 			</xs:restriction>
308 		</xs:simpleType>
309 	</xs:element>
310 	<xs:complexType name="protologueType">
311 		<xs:sequence>
312 			<xs:element name="ref" type="refType"/>
313 			<xs:element ref="date"/>
314 			<xs:element name="protologue_note" type="protologue_noteType" minOccurs="0"/>
315 		</xs:sequence>
316 	</xs:complexType>
317 	<xs:complexType name="protologue_noteType" mixed="true">
318 		<xs:choice minOccurs="0" maxOccurs="unbounded">
319 			<xs:element ref="i"/>
320 		</xs:choice>
321 	</xs:complexType>
322 	<xs:element name="qualifier">
323 		<xs:simpleType>
324 			<xs:restriction base="xs:string">
325 				<xs:enumeration value="cf."/>
326 				<xs:enumeration value="?"/>
327 			</xs:restriction>
328 		</xs:simpleType>
329 	</xs:element>
330 	<xs:element name="rank">
331 		<xs:simpleType>
332 			<xs:restriction base="xs:string">
333 				<xs:enumeration value="fam."/>
334 				<xs:enumeration value="gen."/>
335 				<xs:enumeration value="sp."/>
336 			</xs:restriction>
337 		</xs:simpleType>
338 	</xs:element>
339 	<xs:element name="rank_qualified">
340 		<xs:simpleType>
341 			<xs:restriction base="xs:string">
342 				<xs:enumeration value="sp."/>
343 			</xs:restriction>
344 		</xs:simpleType>
345 	</xs:element>
346 	<xs:complexType name="refType" mixed="true">
347 		<xs:choice minOccurs="0" maxOccurs="unbounded">
348 			<xs:element ref="i"/>
349 		</xs:choice>
350 	</xs:complexType>
351 	<xs:element name="scope_geography">
352 		<xs:simpleType>
353 			<xs:restriction base="xs:string">
354 				
355 			</xs:restriction>
356 		</xs:simpleType>
357 	</xs:element>
358 	<xs:element name="seq">
359 		<xs:simpleType>
360 			<xs:restriction base="xs:string">
361 			
362 			</xs:restriction>
363 		</xs:simpleType>
364 	</xs:element>
365 	<xs:complexType name="sourceType" mixed="true">
366 		<xs:choice minOccurs="0" maxOccurs="unbounded">
367 			<xs:element ref="i"/>
368 		</xs:choice>
369 	</xs:complexType>
370 	<xs:element name="source_date">
371 		<xs:simpleType>
372 			<xs:restriction base="xs:string">
373 			
374 			</xs:restriction>
375 		</xs:simpleType>
376 	</xs:element>
377 	<xs:complexType name="specimensType" mixed="true">
378 		<xs:choice minOccurs="0" maxOccurs="unbounded">
379 			<xs:element ref="i"/>
380 		</xs:choice>
381 	</xs:complexType>
382 	<xs:complexType name="taxonType">
383 		<xs:sequence>
384 			<xs:element name="taxon_description" type="taxon_descriptionType"/>
385 			<xs:element name="taxon" type="taxonType" minOccurs="0"/>
386 		</xs:sequence>
387 	</xs:complexType>
388 	<xs:complexType name="taxon_descriptionType" mixed="true">
389 		<xs:choice minOccurs="0" maxOccurs="unbounded">
390 			<xs:element ref="seq"/>
391 			<xs:element ref="title"/>
392 			<xs:element name="name_info" type="name_infoType"/>
393 			<xs:element ref="contributor"/>
394 			<xs:element name="description" type="descriptionType"/>
395 			<xs:element ref="habitat"/>
396 			<xs:element name="distribution" type="distributionType"/>
397 			<xs:element name="note" type="noteType"/>
398 			<xs:element name="identification" type="identificationType"/>
399 			<xs:element name="key_note_end" type="key_note_endType"/>
400 			<xs:element ref="chromosome"/>
401 			<xs:element name="conservation" type="conservationType"/>
402 			<xs:element name="images" type="imagesType"/>
403 			<xs:element ref="licence"/>
404 			<xs:element ref="phenology"/>
405 			<xs:element ref="scope_geography"/>
406 			<xs:element name="source" type="sourceType"/>
407 			<xs:element ref="source_date"/>
408 			<xs:element name="specimens" type="specimensType"/>
409 			<xs:element name="weed_status" type="weed_statusType"/>
410 		</xs:choice>
411 	</xs:complexType>
412 	<xs:element name="title">
413 		<xs:simpleType>
414 			<xs:restriction base="xs:string">
415 				
416 			</xs:restriction>
417 		</xs:simpleType>
418 	</xs:element>
419 	<xs:element name="weed_legislative">
420 		<xs:simpleType>
421 			<xs:restriction base="xs:string">
422 				<xs:enumeration value="EPWC Act 2010"/>
423 				<xs:enumeration value="Other Acts"/>
424 			</xs:restriction>
425 		</xs:simpleType>
426 	</xs:element>
427 	<xs:element name="weed_legislative_code">
428 		<xs:simpleType>
429 			<xs:restriction base="xs:string">
430 				<xs:enumeration value="5H"/>
431 				<xs:enumeration value="Other codes"/>
432 			</xs:restriction>
433 		</xs:simpleType>
434 	</xs:element>
435 	<xs:complexType name="weed_statusType">
436 		<xs:sequence>
437 			<xs:element ref="weed_status_text"/>
438 			<xs:element ref="weed_legislative_code"/>
439 			<xs:element ref="weed_legislative"/>
440 		</xs:sequence>
441 	</xs:complexType>
442 	<xs:element name="weed_status_text">
443 		<xs:simpleType>
444 			<xs:restriction base="xs:string">
445 				
446 			</xs:restriction>
447 		</xs:simpleType>
448 	</xs:element>
449 </xs:schema>