uddf 0.1.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2126 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- UDDF version 3.3.0, last additions/changes: September 27th, 2021
3
+
4
+ Date Changes Author
5
+ =====================================================================================================================================
6
+ Feb 05, 2015 <equipmentused> is a child element of <informationbeforedive>, Kai Schröder
7
+ but was accidentally here declared as child of <informationafterdive>
8
+ - now corrected
9
+ line 621: minOccurs="0" added
10
+
11
+ Feb 11, 2015 "maxOccurs="unbounded" for <rating> inside <dive> removed - was Kai Schröder
12
+ accidentally inserted here
13
+
14
+ Jul 19, 2017 New elements added: Kai Schröder
15
+ * <bodytemperature> (child element of <waypoint>)
16
+ * <certificatenumber> (child element of <certification>)
17
+ * <pulserate> (child element of <waypoint>)
18
+ * <setdcallgasdefinitions/> (child element of <setdcgasdefinitionsdata>)
19
+ * <setdcgasdata> (child element of <setdcgasdefinitionsdata>)
20
+ * <setmarker> (child element of <waypoint>)
21
+ Functionality altered:
22
+ * <setdcgasdefinitionsdata>
23
+ Dec 06, 2017 Keyword "apnea" added with <divemode>. So far only the German word "apnoe" Kai Schröder
24
+ was implemented. For reasons of compatibility, both versions are allowed
25
+ now.
26
+ Nov 14, 2018 Keyword <heartrate> added with <waypoint>. Kai Schröder
27
+ May 28, 2021 New elements added: Kai Schröder
28
+ * <analysedhe> (child element of <tankdata>)
29
+ * <analysedo2> (child element of <tankdata>)
30
+ * <apdiving> (child element of <applicationdata>)
31
+ * <batteryvoltage> (child element of <waypoint>)
32
+ * <co2sensor> (child element of <rebreather>)
33
+ * <deepstops> (child element of <informationbeforedive>, <profile>, <table>)
34
+ * <deepstoptime> (child element of <deepstops>)
35
+ * <deepstoptype> (child element of <deepstops>)
36
+ * <hired/> (child element of <equipment>'s child elements)
37
+ * <info> (child element of <waypoint>)
38
+ * <ppco2> (child element of <waypoint>)
39
+ * <ratio> (child element of <applicationdata>)
40
+ * <rebreatherselftest> (child element of <informationbeforedive>)
41
+ * <scrubber> (child element of <waypoint>)
42
+ * <scrubbermonitor> (child element of <rebreather>)
43
+ * <selftest> (child element of <informationbeforedive>)
44
+ * <setgfhigh> (child element of <waypoint>)
45
+ * <setgflow> (child element of <waypoint>)
46
+ * <setr0> (child element of <waypoint>)
47
+ * <setsafetystop> (child element of <informationbeforedive>)
48
+ * <softwareupdate> (child element of <divecomputer>)
49
+ * <softwareused> (child element of <informationbeforedive>)
50
+ * <softwareversion> (child element of <softwareupdate>)
51
+ * <switchdecomodel> (child element of <waypoint>)
52
+ * <switchtank> (child element of <waypoint>)
53
+ * <temperaturesensor> (child element of <rebreather>)
54
+ * <timer> (child element of <informationafterdive>, <informationbeforedive>, <waypoint>)
55
+ * <timerdevice> (child element of <divecomputer> and <rebreather>)
56
+ * <timetosurface> (child element of <waypoint>)
57
+ Functionality altered:
58
+ * <apparatus> - new keyword "apnoea" added
59
+ * <divemode/> - new keyword "gauge" added
60
+ Renamed elements:
61
+ * <measuredpo2> -> <ppo2>
62
+ Aug 24, 2021 New element added: Kai Schröder
63
+ * <battery/> (child element of <divecomputer>, <rebreather>, <tank>)
64
+ Sep 27, 2021 Functionality altered: Kai Schröder
65
+ * <batterychargecondition>, <batteryvoltage> - now only one attribute "ref"
66
+ (distinction between "deviceref" and "tankref" shouldn't be necessary)
67
+ -->
68
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.streit.cc/uddf/3.3/"
69
+ targetNamespace="http://www.streit.cc/uddf/3.3/" elementFormDefault="qualified" attributeFormDefault="unqualified">
70
+ <xs:element name="uddf">
71
+ <xs:complexType>
72
+ <xs:all>
73
+ <xs:element ref="generator"/>
74
+ <xs:element ref="mediadata" minOccurs="0"/>
75
+ <xs:element ref="maker" minOccurs="0"/>
76
+ <xs:element ref="business" minOccurs="0"/>
77
+ <xs:element ref="diver" minOccurs="0"/>
78
+ <xs:element ref="divesite" minOccurs="0"/>
79
+ <xs:element ref="divetrip" minOccurs="0"/>
80
+ <xs:element ref="gasdefinitions" minOccurs="0"/>
81
+ <xs:element name="decomodel" minOccurs="0">
82
+ <xs:complexType>
83
+ <xs:all>
84
+ <xs:element name="buehlmann" type="buehlmannType"/>
85
+ <xs:element name="rgbm" type="rgbmType"/>
86
+ <xs:element name="vpm" type="vpmType"/>
87
+ </xs:all>
88
+ </xs:complexType>
89
+ </xs:element>
90
+ <xs:element ref="profiledata" minOccurs="0"/>
91
+ <xs:element ref="tablegeneration" minOccurs="0"/>
92
+ <xs:element ref="divecomputercontrol" minOccurs="0"/>
93
+ </xs:all>
94
+ <xs:attribute name="version"/>
95
+ </xs:complexType>
96
+ </xs:element>
97
+ <!--
98
+ *** global types
99
+ -->
100
+ <xs:complexType name="ID_TYPE">
101
+ <xs:attribute name="id" type="xs:ID" use="required"/>
102
+ </xs:complexType>
103
+ <xs:simpleType name="markerType">
104
+ <xs:restriction base="xs:string">
105
+ <xs:length value="0"/>
106
+ </xs:restriction>
107
+ </xs:simpleType>
108
+ <xs:complexType name="namedType">
109
+ <xs:complexContent>
110
+ <xs:extension base="ID_TYPE">
111
+ <xs:sequence>
112
+ <xs:element name="name" type="xs:string"/>
113
+ <xs:element name="aliasname" minOccurs="0" maxOccurs="unbounded"/>
114
+ </xs:sequence>
115
+ </xs:extension>
116
+ </xs:complexContent>
117
+ </xs:complexType>
118
+ <xs:complexType name="simpleNamedType">
119
+ <xs:sequence>
120
+ <xs:element name="name" type="xs:string"/>
121
+ <xs:element name="aliasname" minOccurs="0" maxOccurs="unbounded"/>
122
+ </xs:sequence>
123
+ </xs:complexType>
124
+ <xs:complexType name="addressType">
125
+ <xs:all>
126
+ <xs:element name="street" type="xs:string" minOccurs="0"/>
127
+ <xs:element name="city" type="xs:string" minOccurs="0"/>
128
+ <xs:element name="postcode" type="xs:string" minOccurs="0"/>
129
+ <xs:element name="country" type="xs:string"/>
130
+ <xs:element name="province" type="xs:string" minOccurs="0"/>
131
+ </xs:all>
132
+ </xs:complexType>
133
+ <xs:complexType name="contactType">
134
+ <xs:sequence>
135
+ <xs:element name="language" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
136
+ <xs:element name="phone" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
137
+ <xs:element name="mobilephone" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
138
+ <xs:element name="fax" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
139
+ <xs:element name="email" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
140
+ <xs:element name="homepage" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
141
+ </xs:sequence>
142
+ </xs:complexType>
143
+ <xs:complexType name="encapsulatedDateTimeType">
144
+ <xs:sequence>
145
+ <xs:element name="datetime" type="xs:dateTime"/>
146
+ </xs:sequence>
147
+ </xs:complexType>
148
+ <xs:complexType name="notesType">
149
+ <xs:choice maxOccurs="unbounded">
150
+ <xs:element name="para" type="xs:string" minOccurs="0"/>
151
+ <xs:element name="link" type="linkType" minOccurs="0"/>
152
+ </xs:choice>
153
+ </xs:complexType>
154
+ <xs:complexType name="linkType">
155
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
156
+ </xs:complexType>
157
+ <xs:complexType name="priceType">
158
+ <xs:simpleContent>
159
+ <xs:extension base="xs:float">
160
+ <xs:attribute name="currency">
161
+ <xs:simpleType>
162
+ <xs:restriction base="xs:string">
163
+ <xs:length value="3"/>
164
+ </xs:restriction>
165
+ </xs:simpleType>
166
+ </xs:attribute>
167
+ </xs:extension>
168
+ </xs:simpleContent>
169
+ </xs:complexType>
170
+ <xs:complexType name="priceperdivepackageType">
171
+ <xs:complexContent>
172
+ <xs:extension base="priceType">
173
+ <xs:attribute name="noofdives"/>
174
+ </xs:extension>
175
+ </xs:complexContent>
176
+ </xs:complexType>
177
+ <xs:complexType name="ratingType">
178
+ <xs:sequence>
179
+ <xs:element name="datetime" type="xs:dateTime" minOccurs="0"/>
180
+ <xs:element name="ratingvalue" type="ratingvalueType"/>
181
+ </xs:sequence>
182
+ </xs:complexType>
183
+ <xs:simpleType name="ratingvalueType">
184
+ <xs:restriction base="xs:short">
185
+ <xs:minInclusive value="1"/>
186
+ <xs:maxInclusive value="10"/>
187
+ </xs:restriction>
188
+ </xs:simpleType>
189
+ <!--
190
+ *** generator
191
+ -->
192
+ <xs:element name="generator">
193
+ <xs:complexType>
194
+ <xs:complexContent>
195
+ <xs:extension base="simpleNamedType">
196
+ <xs:sequence>
197
+ <xs:element name="type" minOccurs="0">
198
+ <xs:simpleType>
199
+ <xs:restriction base="xs:string">
200
+ <xs:enumeration value="converter"/>
201
+ <xs:enumeration value="divecomputer"/>
202
+ <xs:enumeration value="logbook"/>
203
+ </xs:restriction>
204
+ </xs:simpleType>
205
+ </xs:element>
206
+ <xs:element name="link" type="linkType" minOccurs="0"/>
207
+ <xs:element name="manufacturer" type="manufacturerType" minOccurs="0"/>
208
+ <xs:element name="version" type="xs:string" minOccurs="0"/>
209
+ <xs:element name="datetime" type="xs:dateTime" minOccurs="0"/>
210
+ </xs:sequence>
211
+ </xs:extension>
212
+ </xs:complexContent>
213
+ </xs:complexType>
214
+ </xs:element>
215
+ <!--
216
+ *** mediadata
217
+ -->
218
+ <xs:element name="mediadata">
219
+ <xs:complexType>
220
+ <xs:sequence>
221
+ <xs:element name="audio" type="mediaType" minOccurs="0" maxOccurs="unbounded"/>
222
+ <xs:element name="image" type="imageType" minOccurs="0" maxOccurs="unbounded"/>
223
+ <xs:element name="video" type="mediaType" minOccurs="0" maxOccurs="unbounded"/>
224
+ </xs:sequence>
225
+ </xs:complexType>
226
+ </xs:element>
227
+ <xs:complexType name="mediaType">
228
+ <xs:complexContent>
229
+ <xs:extension base="ID_TYPE">
230
+ <xs:sequence>
231
+ <xs:element name="title" type="xs:string" minOccurs="0"/>
232
+ <xs:element name="objectname" type="xs:string"/>
233
+ </xs:sequence>
234
+ </xs:extension>
235
+ </xs:complexContent>
236
+ </xs:complexType>
237
+ <xs:complexType name="imageType">
238
+ <xs:complexContent>
239
+ <xs:extension base="mediaType">
240
+ <xs:sequence>
241
+ <xs:element name="imagedata" minOccurs="0">
242
+ <xs:complexType>
243
+ <xs:all>
244
+ <xs:element name="aperture" type="xs:float" minOccurs="0"/>
245
+ <xs:element name="datetime" type="xs:dateTime" minOccurs="0"/>
246
+ <xs:element name="exposurecompensation" type="xs:float" minOccurs="0"/>
247
+ <xs:element name="filmspeed" type="xs:unsignedInt" minOccurs="0"/>
248
+ <xs:element name="focallength" type="xs:float" minOccurs="0"/>
249
+ <xs:element name="focusingdistance" type="xs:float" minOccurs="0"/>
250
+ <xs:element name="meteringmethod" minOccurs="0">
251
+ <xs:simpleType>
252
+ <xs:restriction base="xs:string">
253
+ <xs:enumeration value="spot"/>
254
+ <xs:enumeration value="centerweighted"/>
255
+ <xs:enumeration value="matrix"/>
256
+ </xs:restriction>
257
+ </xs:simpleType>
258
+ </xs:element>
259
+ <xs:element name="shutterspeed" type="xs:float" minOccurs="0"/>
260
+ </xs:all>
261
+ </xs:complexType>
262
+ </xs:element>
263
+ </xs:sequence>
264
+ <xs:attribute name="height" type="xs:unsignedInt"/>
265
+ <xs:attribute name="width" type="xs:unsignedInt"/>
266
+ <xs:attribute name="format" type="xs:string"/>
267
+ </xs:extension>
268
+ </xs:complexContent>
269
+ </xs:complexType>
270
+ <!--
271
+ *** maker
272
+ -->
273
+ <xs:element name="maker">
274
+ <xs:complexType>
275
+ <xs:sequence>
276
+ <xs:element name="manufacturer" type="manufacturerType" minOccurs="0" maxOccurs="unbounded"/>
277
+ </xs:sequence>
278
+ </xs:complexType>
279
+ </xs:element>
280
+ <!-- old version... (v3.2.1)
281
+ <xs:element name="maker">
282
+ <xs:complexType>
283
+ <xs:complexContent>
284
+ <xs:extension base="simpleNamedType">
285
+ <xs:sequence>
286
+ <xs:element name="manufacturer" type="manufacturerType" minOccurs="0" maxOccurs="unbounded"/>
287
+ </xs:sequence>
288
+ </xs:extension>
289
+ </xs:complexContent>
290
+ </xs:complexType>
291
+ </xs:element>
292
+ end of old version -->
293
+ <!--
294
+ *** business
295
+ -->
296
+ <xs:element name="business">
297
+ <xs:complexType>
298
+ <xs:sequence>
299
+ <xs:element name="shop" type="shopType" minOccurs="0" maxOccurs="unbounded"/>
300
+ </xs:sequence>
301
+ </xs:complexType>
302
+ </xs:element>
303
+ <!-- old version... (v3.2.1)
304
+ <xs:element name="business">
305
+ <xs:complexType>
306
+ <xs:complexContent>
307
+ <xs:extension base="simpleNamedType">
308
+ <xs:sequence>
309
+ <xs:element name="shop" type="shopType" minOccurs="0" maxOccurs="unbounded"/>
310
+ </xs:sequence>
311
+ </xs:extension>
312
+ </xs:complexContent>
313
+ </xs:complexType>
314
+ </xs:element>
315
+ end of old version -->
316
+ <!--
317
+ *** diver
318
+ -->
319
+ <xs:element name="diver">
320
+ <xs:complexType>
321
+ <xs:sequence>
322
+ <xs:element name="owner" type="personType"/>
323
+ <xs:element name="buddy" minOccurs="0" maxOccurs="unbounded">
324
+ <xs:complexType>
325
+ <xs:complexContent>
326
+ <xs:extension base="personType">
327
+ <xs:sequence>
328
+ <xs:element name="student" minOccurs="0"/>
329
+ </xs:sequence>
330
+ </xs:extension>
331
+ </xs:complexContent>
332
+ </xs:complexType>
333
+ </xs:element>
334
+ </xs:sequence>
335
+ </xs:complexType>
336
+ </xs:element>
337
+ <xs:complexType name="personType">
338
+ <xs:complexContent>
339
+ <xs:extension base="individualType">
340
+ <xs:sequence>
341
+ <xs:element name="equipment" type="equipmentType" minOccurs="0"/>
342
+ <xs:element name="medical" minOccurs="0">
343
+ <xs:complexType>
344
+ <xs:sequence>
345
+ <xs:element name="examination" type="examinationType" maxOccurs="unbounded"/>
346
+ </xs:sequence>
347
+ </xs:complexType>
348
+ </xs:element>
349
+ <xs:element name="education" minOccurs="0">
350
+ <xs:complexType>
351
+ <xs:sequence>
352
+ <xs:element name="certification" type="certificationType" maxOccurs="unbounded"/>
353
+ </xs:sequence>
354
+ </xs:complexType>
355
+ </xs:element>
356
+ <xs:element name="divepermissions" minOccurs="0">
357
+ <xs:complexType>
358
+ <xs:sequence>
359
+ <xs:element name="permit" type="permitType" maxOccurs="unbounded"/>
360
+ </xs:sequence>
361
+ </xs:complexType>
362
+ </xs:element>
363
+ <xs:element name="diveinsurances" minOccurs="0">
364
+ <xs:complexType>
365
+ <xs:sequence>
366
+ <xs:element name="insurance" type="insuranceType" maxOccurs="unbounded"/>
367
+ </xs:sequence>
368
+ </xs:complexType>
369
+ </xs:element>
370
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
371
+ </xs:sequence>
372
+ </xs:extension>
373
+ </xs:complexContent>
374
+ </xs:complexType>
375
+ <xs:simpleType name="sexType">
376
+ <xs:restriction base="xs:string">
377
+ <xs:enumeration value="undetermined"/>
378
+ <xs:enumeration value="male"/>
379
+ <xs:enumeration value="female"/>
380
+ <xs:enumeration value="hermaphrodite"/>
381
+ </xs:restriction>
382
+ </xs:simpleType>
383
+ <xs:complexType name="personalType">
384
+ <xs:all>
385
+ <xs:element name="firstname" type="xs:string"/>
386
+ <xs:element name="middlename" type="xs:string" minOccurs="0"/>
387
+ <xs:element name="lastname" type="xs:string"/>
388
+ <xs:element name="birthname" type="xs:string" minOccurs="0"/>
389
+ <xs:element name="honorific" type="xs:string" minOccurs="0"/>
390
+ <xs:element name="sex" type="sexType" minOccurs="0"/>
391
+ <xs:element name="birthdate" type="encapsulatedDateTimeType" minOccurs="0"/>
392
+ <xs:element name="passport" type="xs:string" minOccurs="0"/>
393
+ <xs:element name="membership" minOccurs="0">
394
+ <xs:complexType>
395
+ <xs:attribute name="organisation" type="xs:string" use="required"/>
396
+ <xs:attribute name="memberid" type="xs:string"/>
397
+ </xs:complexType>
398
+ </xs:element>
399
+ <xs:element name="height" type="xs:float" minOccurs="0"/>
400
+ <xs:element name="weight" type="xs:float" minOccurs="0"/>
401
+ <xs:element name="bloodgroup" type="xs:string" minOccurs="0"/>
402
+ <xs:element name="smoking" minOccurs="0">
403
+ <xs:simpleType>
404
+ <xs:restriction base="xs:string">
405
+ <xs:enumeration value="0"/>
406
+ <xs:enumeration value="0-3"/>
407
+ <xs:enumeration value="4-10"/>
408
+ <xs:enumeration value="11-20"/>
409
+ <xs:enumeration value="21-40"/>
410
+ <xs:enumeration value="40+"/>
411
+ </xs:restriction>
412
+ </xs:simpleType>
413
+ </xs:element>
414
+ <xs:element name="numberofdives" minOccurs="0">
415
+ <xs:complexType>
416
+ <xs:attribute name="startdate" type="xs:dateTime" use="required"/>
417
+ <xs:attribute name="enddate" type="xs:dateTime" use="required"/>
418
+ <xs:attribute name="dives" type="xs:unsignedInt" use="required"/>
419
+ </xs:complexType>
420
+ </xs:element>
421
+ </xs:all>
422
+ </xs:complexType>
423
+ <xs:complexType name="individualType">
424
+ <xs:complexContent>
425
+ <xs:extension base="ID_TYPE">
426
+ <xs:sequence>
427
+ <xs:element name="personal" type="personalType"/>
428
+ <xs:element name="address" type="addressType" minOccurs="0"/>
429
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
430
+ </xs:sequence>
431
+ </xs:extension>
432
+ </xs:complexContent>
433
+ </xs:complexType>
434
+ <xs:complexType name="examinationType">
435
+ <xs:complexContent>
436
+ <xs:extension base="ID_TYPE">
437
+ <xs:sequence>
438
+ <xs:element name="datetime" type="xs:dateTime" minOccurs="0"/>
439
+ <xs:choice minOccurs="0">
440
+ <xs:element name="doctor" type="individualType"/>
441
+ <xs:element name="link" type="linkType"/>
442
+ </xs:choice>
443
+ <xs:element name="examinationresult" minOccurs="0">
444
+ <xs:simpleType>
445
+ <xs:restriction base="xs:string">
446
+ <xs:enumeration value="passed"/>
447
+ <xs:enumeration value="failed"/>
448
+ </xs:restriction>
449
+ </xs:simpleType>
450
+ </xs:element>
451
+ <xs:element name="totallungcapacity" type="xs:float" minOccurs="0"/>
452
+ <xs:element name="vitalcapacity" type="xs:float" minOccurs="0"/>
453
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
454
+ </xs:sequence>
455
+ </xs:extension>
456
+ </xs:complexContent>
457
+ </xs:complexType>
458
+ <xs:complexType name="certificationType">
459
+ <xs:sequence>
460
+ <xs:choice>
461
+ <xs:element name="level" type="xs:string"/>
462
+ <xs:element name="specialty" type="xs:string"/>
463
+ </xs:choice>
464
+ <xs:element name="certificatenumber" type="xs:string" minOccurs="0"/>
465
+ <xs:element name="organization" type="xs:string" minOccurs="0"/>
466
+ <xs:element name="instructor" type="instructorType" minOccurs="0"/>
467
+ <xs:element name="issuedate" type="encapsulatedDateTimeType" minOccurs="0"/>
468
+ <xs:element name="validdate" type="encapsulatedDateTimeType" minOccurs="0"/>
469
+ <!-- auskommentiert von Kai
470
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
471
+ Ende auskommentiert von Kai -->
472
+ </xs:sequence>
473
+ </xs:complexType>
474
+ <xs:complexType name="instructorType">
475
+ <xs:complexContent>
476
+ <xs:extension base="individualType">
477
+ <xs:sequence>
478
+ <xs:element name="notes" type="notesType" minOccurs="0">
479
+ <xs:annotation>
480
+ <xs:documentation xml:lang="en"/>
481
+ </xs:annotation>
482
+ </xs:element>
483
+ </xs:sequence>
484
+ </xs:extension>
485
+ </xs:complexContent>
486
+ </xs:complexType>
487
+ <xs:complexType name="permitType">
488
+ <xs:sequence>
489
+ <xs:element name="name"/>
490
+ <xs:element name="aliasname" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
491
+ <xs:element name="region" type="xs:string" minOccurs="0"/>
492
+ <xs:element name="issuedate" type="encapsulatedDateTimeType" minOccurs="0"/>
493
+ <xs:element name="validdate" type="encapsulatedDateTimeType" minOccurs="0"/>
494
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
495
+ </xs:sequence>
496
+ </xs:complexType>
497
+ <xs:complexType name="insuranceType">
498
+ <xs:sequence>
499
+ <xs:element name="name"/>
500
+ <xs:element name="aliasname" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
501
+ <xs:element name="issuedate" type="encapsulatedDateTimeType" minOccurs="0"/>
502
+ <xs:element name="validdate" type="encapsulatedDateTimeType" minOccurs="0"/>
503
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
504
+ </xs:sequence>
505
+ </xs:complexType>
506
+ <!--
507
+ *** equipment
508
+ -->
509
+ <xs:complexType name="equipmentType">
510
+ <xs:sequence>
511
+ <xs:element name="boots" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
512
+ <xs:element name="buoyancycontroldevice" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
513
+ <xs:element name="camera" type="cameraType" minOccurs="0" maxOccurs="unbounded"/>
514
+ <xs:element name="compass" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
515
+ <xs:element name="compressor" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
516
+ <!-- <xs:element name="divecomputer" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/> -->
517
+ <xs:element name="divecomputer" type="divecomputerType" minOccurs="0" maxOccurs="unbounded"/>
518
+ <xs:element name="equipmentconfiguration" type="equipmentconfigurationType" minOccurs="0" maxOccurs="unbounded"/>
519
+ <xs:element name="fins" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
520
+ <xs:element name="gloves" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
521
+ <xs:element name="knife" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
522
+ <xs:element name="lead" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
523
+ <xs:element name="light" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
524
+ <xs:element name="mask" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
525
+ <xs:element name="rebreather" type="rebreatherType" minOccurs="0" maxOccurs="unbounded"/>
526
+ <xs:element name="regulator" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
527
+ <xs:element name="scooter" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
528
+ <xs:element name="suit" type="suitType" minOccurs="0" maxOccurs="unbounded"/>
529
+ <xs:element name="tank" type="tankType" minOccurs="0" maxOccurs="unbounded"/>
530
+ <xs:element name="variouspieces" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
531
+ <xs:element name="videocamera" type="videocameraType" minOccurs="0" maxOccurs="unbounded"/>
532
+ <xs:element name="watch" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
533
+ </xs:sequence>
534
+ </xs:complexType>
535
+ <!-- Beginn Ergänzung von Kai -->
536
+ <xs:complexType name="equipmentconfigurationType">
537
+ <xs:complexContent>
538
+ <xs:extension base="namedType">
539
+ <xs:sequence>
540
+ <xs:element name="link" type="linkType" maxOccurs="unbounded"/>
541
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
542
+ </xs:sequence>
543
+ </xs:extension>
544
+ </xs:complexContent>
545
+ </xs:complexType>
546
+ <!-- Ende Ergänzung von Kai -->
547
+ <xs:complexType name="manufacturerType">
548
+ <xs:complexContent>
549
+ <xs:extension base="namedType">
550
+ <xs:sequence>
551
+ <xs:element name="address" type="addressType" minOccurs="0"/>
552
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
553
+ </xs:sequence>
554
+ </xs:extension>
555
+ </xs:complexContent>
556
+ </xs:complexType>
557
+ <xs:complexType name="equipmentPieceType">
558
+ <xs:complexContent>
559
+ <xs:extension base="namedType">
560
+ <xs:sequence>
561
+ <xs:element name="hired" minOccurs="0">
562
+ <xs:simpleType>
563
+ <xs:restriction base="xs:string">
564
+ <xs:length value="0"/>
565
+ </xs:restriction>
566
+ </xs:simpleType>
567
+ </xs:element>
568
+ <xs:element name="link" type="linkType" minOccurs="0"/>
569
+ <xs:element name="manufacturer" type="manufacturerType" minOccurs="0"/>
570
+ <xs:element name="model" type="xs:string" minOccurs="0"/>
571
+ <xs:element name="nextservicedate" type="encapsulatedDateTimeType" minOccurs="0"/>
572
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
573
+ <xs:element name="purchase" type="purchaseType" minOccurs="0"/>
574
+ <xs:element name="serialnumber" type="xs:string" minOccurs="0"/>
575
+ <xs:element name="serviceinterval" type="xs:positiveInteger" minOccurs="0"/>
576
+ </xs:sequence>
577
+ </xs:extension>
578
+ </xs:complexContent>
579
+ </xs:complexType>
580
+ <xs:complexType name="suitType">
581
+ <xs:complexContent>
582
+ <xs:extension base="equipmentPieceType">
583
+ <xs:sequence>
584
+ <xs:element name="suittype" minOccurs="0">
585
+ <xs:simpleType>
586
+ <xs:restriction base="xs:string">
587
+ <xs:enumeration value="dive-skin"/>
588
+ <xs:enumeration value="wet-suit"/>
589
+ <xs:enumeration value="dry-suit"/>
590
+ <xs:enumeration value="hot-water-suit"/>
591
+ <xs:enumeration value="other"/>
592
+ </xs:restriction>
593
+ </xs:simpleType>
594
+ </xs:element>
595
+ </xs:sequence>
596
+ </xs:extension>
597
+ </xs:complexContent>
598
+ </xs:complexType>
599
+ <xs:complexType name="divecomputerType">
600
+ <xs:complexContent>
601
+ <xs:extension base="equipmentPieceType">
602
+ <xs:sequence>
603
+ <xs:element name="softwareupdate">
604
+ <xs:complexType>
605
+ <xs:sequence>
606
+ <xs:element name="softwareversion" type="xs:string" minOccurs="1" maxOccurs="1"/>
607
+ <xs:element name="datetime" type="xs:dateTime"/>
608
+ </xs:sequence>
609
+ </xs:complexType>
610
+ </xs:element>
611
+ <xs:element name="battery" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
612
+ <xs:element name="timerdevice" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
613
+ </xs:sequence>
614
+ </xs:extension>
615
+ </xs:complexContent>
616
+ </xs:complexType>
617
+ <xs:complexType name="tankType">
618
+ <xs:complexContent>
619
+ <xs:extension base="equipmentPieceType">
620
+ <xs:sequence>
621
+ <xs:element name="battery" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
622
+ <xs:element name="tankmaterial" type="tankmaterialType" minOccurs="0" maxOccurs="1"/>
623
+ <xs:element name="tankvolume" type="xs:float" minOccurs="0" maxOccurs="1"/>
624
+ </xs:sequence>
625
+ </xs:extension>
626
+ </xs:complexContent>
627
+ </xs:complexType>
628
+ <xs:simpleType name="tankmaterialType">
629
+ <xs:restriction base="xs:string">
630
+ <xs:enumeration value="aluminium"/>
631
+ <xs:enumeration value="carbon"/>
632
+ <xs:enumeration value="steel"/>
633
+ </xs:restriction>
634
+ </xs:simpleType>
635
+ <xs:complexType name="cameraType">
636
+ <xs:complexContent>
637
+ <xs:extension base="ID_TYPE">
638
+ <xs:sequence>
639
+ <xs:element name="body" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
640
+ <xs:element name="lens" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
641
+ <xs:element name="housing" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
642
+ <xs:element name="flash" type="equipmentPieceType" minOccurs="0" maxOccurs="unbounded"/>
643
+ </xs:sequence>
644
+ </xs:extension>
645
+ </xs:complexContent>
646
+ </xs:complexType>
647
+ <xs:complexType name="videocameraType">
648
+ <xs:complexContent>
649
+ <xs:extension base="ID_TYPE">
650
+ <xs:all>
651
+ <xs:element name="body" type="equipmentPieceType" minOccurs="0"/>
652
+ <xs:element name="lens" type="equipmentPieceType" minOccurs="0"/>
653
+ <xs:element name="housing" type="equipmentPieceType" minOccurs="0"/>
654
+ <xs:element name="light" type="equipmentPieceType" minOccurs="0"/>
655
+ </xs:all>
656
+ </xs:extension>
657
+ </xs:complexContent>
658
+ </xs:complexType>
659
+ <xs:complexType name="purchaseType">
660
+ <xs:all>
661
+ <xs:element name="datetime" type="xs:dateTime" minOccurs="0"/>
662
+ <xs:element name="price" type="priceType" minOccurs="0"/>
663
+ <xs:element name="shop" type="shopType" minOccurs="0"/>
664
+ </xs:all>
665
+ </xs:complexType>
666
+ <xs:complexType name="shopType">
667
+ <xs:complexContent>
668
+ <xs:extension base="namedType">
669
+ <xs:sequence>
670
+ <xs:element name="address" type="addressType" minOccurs="0"/>
671
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
672
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
673
+ </xs:sequence>
674
+ </xs:extension>
675
+ </xs:complexContent>
676
+ </xs:complexType>
677
+ <!--
678
+ *** divesite
679
+ -->
680
+ <xs:element name="divesite">
681
+ <xs:complexType>
682
+ <xs:sequence>
683
+ <xs:element name="divebase" type="divebaseType" maxOccurs="unbounded" minOccurs="0"/>
684
+ <xs:element name="site" type="siteType" maxOccurs="unbounded" minOccurs="0"/>
685
+ </xs:sequence>
686
+ </xs:complexType>
687
+ </xs:element>
688
+ <!--
689
+ *** divesite divebase
690
+ -->
691
+ <xs:complexType name="divebaseType">
692
+ <xs:complexContent>
693
+ <xs:extension base="namedType">
694
+ <xs:sequence>
695
+ <xs:element name="address" type="addressType" minOccurs="0"/>
696
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
697
+ <xs:element name="priceperdive" type="priceType" minOccurs="0"/>
698
+ <xs:element name="pricedivepackage" type="priceperdivepackageType" minOccurs="0"/>
699
+ <xs:element name="guide" type="guideType" minOccurs="0" maxOccurs="unbounded"/>
700
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
701
+ <!-- Beginn Ergänzung von Kai -->
702
+ <xs:element name="link" type="linkType" minOccurs="0"/>
703
+ <!-- Ende Ergänzung von Kai -->
704
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
705
+ </xs:sequence>
706
+ </xs:extension>
707
+ </xs:complexContent>
708
+ </xs:complexType>
709
+ <xs:complexType name="guideType">
710
+ <xs:complexContent>
711
+ <xs:extension base="ID_TYPE">
712
+ <xs:sequence>
713
+ <xs:element name="link" type="linkType"/>
714
+ </xs:sequence>
715
+ </xs:extension>
716
+ </xs:complexContent>
717
+ </xs:complexType>
718
+ <!--
719
+ *** divesite site
720
+ -->
721
+ <xs:complexType name="siteType">
722
+ <xs:complexContent>
723
+ <xs:extension base="namedType">
724
+ <xs:sequence>
725
+ <xs:element name="environment" minOccurs="0">
726
+ <xs:simpleType>
727
+ <xs:restriction base="xs:string">
728
+ <xs:enumeration value="unknown "/>
729
+ <xs:enumeration value="ocean-sea"/>
730
+ <xs:enumeration value="lake-quarry"/>
731
+ <xs:enumeration value="river-spring"/>
732
+ <xs:enumeration value="cave-cavern"/>
733
+ <xs:enumeration value="pool"/>
734
+ <xs:enumeration value="hyperbaric-chamber"/>
735
+ <xs:enumeration value="under-ice"/>
736
+ <xs:enumeration value="other"/>
737
+ </xs:restriction>
738
+ </xs:simpleType>
739
+ </xs:element>
740
+ <xs:element name="geography" type="geographyType" minOccurs="0"/>
741
+ <xs:element name="ecology" type="ecologyType" minOccurs="0"/>
742
+ <xs:element name="sitedata" type="sitedataType" minOccurs="0"/>
743
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
744
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
745
+ </xs:sequence>
746
+ </xs:extension>
747
+ </xs:complexContent>
748
+ </xs:complexType>
749
+ <xs:complexType name="geographyType">
750
+ <xs:all>
751
+ <xs:element name="location" type="xs:string"/>
752
+ <xs:element name="address" type="addressType" minOccurs="0"/>
753
+ <xs:element name="latitude" type="xs:float" minOccurs="0"/>
754
+ <xs:element name="longitude" type="xs:float" minOccurs="0"/>
755
+ <xs:element name="altitude" type="xs:float" minOccurs="0"/>
756
+ <xs:element name="timezone" type="xs:float" minOccurs="0"/>
757
+ </xs:all>
758
+ </xs:complexType>
759
+ <xs:complexType name="sitedataType">
760
+ <xs:sequence>
761
+ <xs:element name="arealength" type="xs:float" minOccurs="0"/>
762
+ <xs:element name="areawidth" type="xs:float" minOccurs="0"/>
763
+ <xs:element name="averagevisibility" type="xs:float" minOccurs="0"/>
764
+ <xs:element name="bottom" type="xs:string" minOccurs="0"/>
765
+ <xs:element name="density" type="xs:float" minOccurs="0"/>
766
+ <xs:element name="difficulty" type="ratingvalueType" minOccurs="0"/>
767
+ <xs:element name="globallightintensity" type="globallightintensityType" minOccurs="0"/>
768
+ <xs:element name="maximumdepth" type="xs:float" minOccurs="0"/>
769
+ <xs:element name="maximumvisibility" type="xs:float" minOccurs="0"/>
770
+ <xs:element name="minimumdepth" type="xs:float" minOccurs="0"/>
771
+ <xs:element name="minimumvisibility" type="xs:float" minOccurs="0"/>
772
+ <xs:element name="terrain" type="xs:string" minOccurs="0"/>
773
+ <xs:element name="wreck" type="wreckType" minOccurs="0" maxOccurs="unbounded"/>
774
+ <xs:element name="cave" type="caveType" minOccurs="0"/>
775
+ <xs:element name="indoor" type="indoorType" minOccurs="0"/>
776
+ <xs:element name="lake" type="placeType" minOccurs="0"/>
777
+ <xs:element name="river" type="placeType" minOccurs="0"/>
778
+ <xs:element name="shore" type="placeType" minOccurs="0"/>
779
+ </xs:sequence>
780
+ </xs:complexType>
781
+ <xs:complexType name="wreckType">
782
+ <xs:complexContent>
783
+ <xs:extension base="simpleNamedType">
784
+ <xs:sequence>
785
+ <xs:element name="shiptype" type="xs:string" minOccurs="0"/>
786
+ <xs:element name="nationality" type="xs:string" minOccurs="0"/>
787
+ <xs:element name="built" type="builtType" minOccurs="0"/>
788
+ <xs:element name="shipdimension" type="dimensionType" minOccurs="0"/>
789
+ <xs:element name="sunk" type="encapsulatedDateTimeType" minOccurs="0"/>
790
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
791
+ </xs:sequence>
792
+ </xs:extension>
793
+ </xs:complexContent>
794
+ </xs:complexType>
795
+ <xs:complexType name="builtType">
796
+ <xs:sequence>
797
+ <xs:element name="shipyard" type="xs:string" minOccurs="0"/>
798
+ <xs:element name="launchingdate" type="encapsulatedDateTimeType" minOccurs="0"/>
799
+ </xs:sequence>
800
+ </xs:complexType>
801
+ <xs:complexType name="dimensionType">
802
+ <xs:all>
803
+ <xs:element name="length" type="xs:float" minOccurs="0"/>
804
+ <xs:element name="beam" type="xs:float" minOccurs="0"/>
805
+ <xs:element name="draught" type="xs:float" minOccurs="0"/>
806
+ <xs:element name="displacement" type="xs:float" minOccurs="0"/>
807
+ <xs:element name="tonnage" type="xs:float" minOccurs="0"/>
808
+ </xs:all>
809
+ </xs:complexType>
810
+ <xs:complexType name="placeType">
811
+ <xs:complexContent>
812
+ <xs:extension base="simpleNamedType">
813
+ <xs:sequence>
814
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
815
+ </xs:sequence>
816
+ </xs:extension>
817
+ </xs:complexContent>
818
+ </xs:complexType>
819
+ <xs:complexType name="caveType">
820
+ <xs:complexContent>
821
+ <xs:extension base="namedType">
822
+ <xs:sequence>
823
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
824
+ </xs:sequence>
825
+ </xs:extension>
826
+ </xs:complexContent>
827
+ </xs:complexType>
828
+ <xs:complexType name="indoorType">
829
+ <xs:complexContent>
830
+ <xs:extension base="simpleNamedType">
831
+ <xs:sequence>
832
+ <xs:element name="address" type="addressType" minOccurs="0"/>
833
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
834
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
835
+ </xs:sequence>
836
+ </xs:extension>
837
+ </xs:complexContent>
838
+ </xs:complexType>
839
+ <xs:complexType name="ecologyType">
840
+ <xs:sequence>
841
+ <xs:element name="fauna" type="faunaType" minOccurs="0"/>
842
+ <xs:element name="flora" type="floraType" minOccurs="0"/>
843
+ </xs:sequence>
844
+ </xs:complexType>
845
+ <xs:complexType name="floraType">
846
+ <xs:all>
847
+ <xs:element name="rhodophyceae" type="singleLifeFormType" minOccurs="0"/>
848
+ <xs:element name="phaeophyceae" type="singleLifeFormType" minOccurs="0"/>
849
+ <xs:element name="chlorophyceae" type="singleLifeFormType" minOccurs="0"/>
850
+ <xs:element name="spermatophyta" type="singleLifeFormType" minOccurs="0"/>
851
+ <xs:element name="floravarious" type="singleLifeFormType" minOccurs="0"/>
852
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
853
+ </xs:all>
854
+ </xs:complexType>
855
+ <xs:complexType name="faunaType">
856
+ <xs:all>
857
+ <xs:element name="invertebrata" type="invertebrataType" minOccurs="0"/>
858
+ <xs:element name="vertebrata" type="vertebrataType" minOccurs="0"/>
859
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
860
+ </xs:all>
861
+ </xs:complexType>
862
+ <xs:complexType name="invertebrataType">
863
+ <xs:all>
864
+ <xs:element name="porifera" type="singleLifeFormType" minOccurs="0"/>
865
+ <xs:element name="coelenterata" type="singleLifeFormType" minOccurs="0"/>
866
+ <xs:element name="cnidaria" type="singleLifeFormType" minOccurs="0"/>
867
+ <xs:element name="ctenophora" type="singleLifeFormType" minOccurs="0"/>
868
+ <xs:element name="plathelminthes" type="singleLifeFormType" minOccurs="0"/>
869
+ <xs:element name="bryozoa" type="singleLifeFormType" minOccurs="0"/>
870
+ <xs:element name="phoronidea" type="singleLifeFormType" minOccurs="0"/>
871
+ <xs:element name="ascidiacea" type="singleLifeFormType" minOccurs="0"/>
872
+ <xs:element name="echinodermata" type="singleLifeFormType" minOccurs="0"/>
873
+ <xs:element name="mollusca" type="singleLifeFormType" minOccurs="0"/>
874
+ <xs:element name="crustacea" type="singleLifeFormType" minOccurs="0"/>
875
+ <xs:element name="invertebratavarious" type="singleLifeFormType" minOccurs="0"/>
876
+ </xs:all>
877
+ </xs:complexType>
878
+ <xs:complexType name="vertebrataType">
879
+ <xs:all>
880
+ <xs:element name="chondrichthyes" type="singleLifeFormType" minOccurs="0"/>
881
+ <xs:element name="osteichthyes" type="singleLifeFormType" minOccurs="0"/>
882
+ <xs:element name="mammalia" type="singleLifeFormType" minOccurs="0"/>
883
+ <xs:element name="amphibia" type="singleLifeFormType" minOccurs="0"/>
884
+ <xs:element name="reptilia" type="singleLifeFormType" minOccurs="0"/>
885
+ <xs:element name="vertebratavarious" type="singleLifeFormType" minOccurs="0"/>
886
+ </xs:all>
887
+ </xs:complexType>
888
+ <xs:complexType name="singleLifeFormType">
889
+ <xs:sequence>
890
+ <xs:element name="species" type="speciesType" minOccurs="0" maxOccurs="unbounded"/>
891
+ </xs:sequence>
892
+ </xs:complexType>
893
+ <xs:complexType name="speciesType">
894
+ <xs:complexContent>
895
+ <xs:extension base="ID_TYPE">
896
+ <xs:all>
897
+ <xs:element name="trivialname" type="xs:string" minOccurs="0"/>
898
+ <xs:element name="scientificname" type="xs:string" minOccurs="0"/>
899
+ <xs:element name="abundance" minOccurs="0">
900
+ <xs:complexType>
901
+ <xs:simpleContent>
902
+ <xs:extension base="xs:unsignedInt">
903
+ <xs:attribute name="quality">
904
+ <xs:simpleType>
905
+ <xs:restriction base="xs:string">
906
+ <xs:enumeration value="exact"/>
907
+ <xs:enumeration value="estimated"/>
908
+ </xs:restriction>
909
+ </xs:simpleType>
910
+ </xs:attribute>
911
+ <xs:attribute name="occurence">
912
+ <xs:simpleType>
913
+ <xs:restriction base="xs:string">
914
+ <xs:enumeration value="not-ascertainable"/>
915
+ <xs:enumeration value="single-individual"/>
916
+ <xs:enumeration value="loose-association"/>
917
+ <xs:enumeration value="swarm"/>
918
+ <xs:enumeration value="colony"/>
919
+ </xs:restriction>
920
+ </xs:simpleType>
921
+ </xs:attribute>
922
+ </xs:extension>
923
+ </xs:simpleContent>
924
+ </xs:complexType>
925
+ </xs:element>
926
+ <xs:element name="sex" type="sexType" minOccurs="0"/>
927
+ <xs:element name="lifestage" minOccurs="0">
928
+ <xs:simpleType>
929
+ <xs:restriction base="xs:string">
930
+ <xs:enumeration value="larva"/>
931
+ <xs:enumeration value="juvenile"/>
932
+ <xs:enumeration value="adult"/>
933
+ </xs:restriction>
934
+ </xs:simpleType>
935
+ </xs:element>
936
+ <xs:element name="lightintensity" type="lightintensityType" minOccurs="0"/>
937
+ <xs:element name="age" type="xs:positiveInteger" minOccurs="0"/>
938
+ <xs:element name="dominance" minOccurs="0">
939
+ <xs:simpleType>
940
+ <xs:restriction base="xs:string">
941
+ <xs:enumeration value="undetermined"/>
942
+ <xs:enumeration value="less-than-1/20"/>
943
+ <xs:enumeration value="1/20-up-to-1/4"/>
944
+ <xs:enumeration value="1/4-up-to-1/2"/>
945
+ <xs:enumeration value="1/2-up-to-3/4"/>
946
+ <xs:enumeration value="greater-than-3/4"/>
947
+ <xs:enumeration value="single-individual"/>
948
+ </xs:restriction>
949
+ </xs:simpleType>
950
+ </xs:element>
951
+ <xs:element name="size" type="xs:float" minOccurs="0"/>
952
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
953
+ </xs:all>
954
+ </xs:extension>
955
+ </xs:complexContent>
956
+ </xs:complexType>
957
+ <xs:simpleType name="globallightintensityType">
958
+ <xs:restriction base="xs:string">
959
+ <xs:enumeration value="undetermined"/>
960
+ <xs:enumeration value="sunny"/>
961
+ <xs:enumeration value="half-shadow"/>
962
+ <xs:enumeration value="shadow"/>
963
+ <xs:enumeration value="no-light"/>
964
+ </xs:restriction>
965
+ </xs:simpleType>
966
+ <xs:complexType name="lightintensityType">
967
+ <xs:simpleContent>
968
+ <xs:extension base="globallightintensityType">
969
+ <xs:attribute name="lux" type="xs:float"/>
970
+ </xs:extension>
971
+ </xs:simpleContent>
972
+ </xs:complexType>
973
+ <!--
974
+ *** gasdefinitons
975
+ -->
976
+ <xs:element name="gasdefinitions">
977
+ <xs:complexType>
978
+ <xs:sequence>
979
+ <xs:element name="mix" type="mixType" maxOccurs="unbounded"/>
980
+ </xs:sequence>
981
+ </xs:complexType>
982
+ </xs:element>
983
+ <xs:complexType name="mixType">
984
+ <xs:complexContent>
985
+ <xs:extension base="namedType">
986
+ <xs:sequence>
987
+ <xs:element name="o2" type="xs:float" minOccurs="0"/>
988
+ <xs:element name="n2" type="xs:float" minOccurs="0"/>
989
+ <xs:element name="he" type="xs:float" minOccurs="0"/>
990
+ <xs:element name="ar" type="xs:float" minOccurs="0"/>
991
+ <xs:element name="h2" type="xs:float" minOccurs="0"/>
992
+ <xs:element name="priceperlitre" type="priceType" minOccurs="0"/>
993
+ <xs:choice>
994
+ <xs:element name="maximumpo2" type="xs:float" minOccurs="0"/>
995
+ <xs:element name="maximumoperationdepth" type="xs:float" minOccurs="0"/>
996
+ </xs:choice>
997
+ <xs:element name="equivalentairdepth" type="xs:float" minOccurs="0"/>
998
+ </xs:sequence>
999
+ </xs:extension>
1000
+ </xs:complexContent>
1001
+ </xs:complexType>
1002
+ <!--
1003
+ *** profiledata
1004
+ -->
1005
+ <xs:element name="profiledata">
1006
+ <xs:complexType>
1007
+ <xs:sequence>
1008
+ <xs:element name="repetitiongroup" type="repetitiongroupType" maxOccurs="unbounded"/>
1009
+ </xs:sequence>
1010
+ </xs:complexType>
1011
+ </xs:element>
1012
+ <xs:complexType name="repetitiongroupType">
1013
+ <xs:complexContent>
1014
+ <xs:extension base="ID_TYPE">
1015
+ <xs:sequence>
1016
+ <xs:element name="dive" type="diveType" maxOccurs="unbounded"/>
1017
+ </xs:sequence>
1018
+ </xs:extension>
1019
+ </xs:complexContent>
1020
+ </xs:complexType>
1021
+ <xs:complexType name="diveType">
1022
+ <xs:complexContent>
1023
+ <xs:extension base="ID_TYPE">
1024
+ <xs:sequence>
1025
+ <xs:element name="applicationdata" type="applicationdataType" minOccurs="0"/>
1026
+ <xs:element name="informationbeforedive" type="informationbeforediveType"/>
1027
+ <xs:element name="tankdata" type="tankdataType" minOccurs="0" maxOccurs="unbounded"/>
1028
+ <xs:element name="samples" type="samplesType" minOccurs="0"> </xs:element>
1029
+ <xs:element name="informationafterdive" type="informationafterdiveType"/>
1030
+ </xs:sequence>
1031
+ </xs:extension>
1032
+ </xs:complexContent>
1033
+ </xs:complexType>
1034
+ <xs:complexType name="informationbeforediveType">
1035
+ <xs:sequence>
1036
+ <xs:element name="link" type="linkType" maxOccurs="unbounded" minOccurs="0"/>
1037
+ <xs:element name="divenumber" type="xs:positiveInteger" minOccurs="0"/>
1038
+ <xs:element name="divenumberofday" type="xs:positiveInteger" minOccurs="0"/>
1039
+ <xs:element name="internaldivenumber" type="xs:positiveInteger" minOccurs="0"/>
1040
+ <xs:element name="datetime" type="xs:dateTime"/>
1041
+ <xs:element name="airtemperature" type="xs:float" minOccurs="0"/>
1042
+ <xs:element name="surfaceintervalbeforedive" type="surfaceintervalType" minOccurs="0"/>
1043
+ <xs:element name="altitude" type="xs:float" minOccurs="0"/>
1044
+ <xs:element name="deepstops" type="deepstopsType" minOccurs="0"/>
1045
+ <xs:element name="equipmentused" minOccurs="0">
1046
+ <xs:complexType>
1047
+ <xs:sequence>
1048
+ <xs:element name="leadquantity" type="xs:float" minOccurs="0"/>
1049
+ <xs:element name="link" type="linkType" minOccurs="0" maxOccurs="unbounded"/>
1050
+ </xs:sequence>
1051
+ </xs:complexType>
1052
+ </xs:element>
1053
+ <xs:element name="apparatus" minOccurs="0">
1054
+ <xs:simpleType>
1055
+ <xs:restriction base="xs:string">
1056
+ <xs:enumeration value="apnea"/>
1057
+ <xs:enumeration value="apnoe"/>
1058
+ <xs:enumeration value="apnoea"/>
1059
+ <xs:enumeration value="chamber"/>
1060
+ <xs:enumeration value="closedcircuit-rebreather"/>
1061
+ <xs:enumeration value="experimental"/>
1062
+ <xs:enumeration value="gauge"/>
1063
+ <xs:enumeration value="open-scuba"/>
1064
+ <xs:enumeration value="other"/>
1065
+ <xs:enumeration value="rebreather"/>
1066
+ <xs:enumeration value="semiclosed-rebreather"/>
1067
+ <xs:enumeration value="surface-supplied"/>
1068
+ </xs:restriction>
1069
+ </xs:simpleType>
1070
+ </xs:element>
1071
+ <xs:element name="platform" minOccurs="0">
1072
+ <xs:simpleType>
1073
+ <xs:restriction base="xs:string">
1074
+ <xs:enumeration value="beach-shore"/>
1075
+ <xs:enumeration value="pier"/>
1076
+ <xs:enumeration value="small-boat"/>
1077
+ <xs:enumeration value="charter-boat"/>
1078
+ <xs:enumeration value="live-aboard"/>
1079
+ <xs:enumeration value="barge"/>
1080
+ <xs:enumeration value="landside"/>
1081
+ <xs:enumeration value="hyperbaric-facility"/>
1082
+ <xs:enumeration value="other"/>
1083
+ </xs:restriction>
1084
+ </xs:simpleType>
1085
+ </xs:element>
1086
+ <xs:element name="purpose" minOccurs="0">
1087
+ <xs:simpleType>
1088
+ <xs:restriction base="xs:string">
1089
+ <xs:enumeration value="sightseeing"/>
1090
+ <xs:enumeration value="learning"/>
1091
+ <xs:enumeration value="teaching"/>
1092
+ <xs:enumeration value="research"/>
1093
+ <xs:enumeration value="photography-videography"/>
1094
+ <xs:enumeration value="spearfishing"/>
1095
+ <xs:enumeration value="proficiency"/>
1096
+ <xs:enumeration value="work"/>
1097
+ <xs:enumeration value="other"/>
1098
+ </xs:restriction>
1099
+ </xs:simpleType>
1100
+ </xs:element>
1101
+ <xs:element name="rebreatherselftest" type="selftestType" minOccurs="0"/>
1102
+ <xs:element name="selftest" type="selftestType" minOccurs="0"/>
1103
+ <xs:element name="setsafetystop" type="setsafetystopType" minOccurs="0"/>
1104
+ <xs:element name="stateofrestbeforedive" minOccurs="0">
1105
+ <xs:simpleType>
1106
+ <xs:restriction base="xs:string">
1107
+ <xs:enumeration value="not-specified"/>
1108
+ <xs:enumeration value="rested"/>
1109
+ <xs:enumeration value="tired"/>
1110
+ <xs:enumeration value="exhausted"/>
1111
+ </xs:restriction>
1112
+ </xs:simpleType>
1113
+ </xs:element>
1114
+ <xs:element name="timer" minOccurs="0" maxOccurs="unbounded">
1115
+ <xs:complexType>
1116
+ <xs:simpleContent>
1117
+ <xs:extension base="xs:float">
1118
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1119
+ </xs:extension>
1120
+ </xs:simpleContent>
1121
+ </xs:complexType>
1122
+ </xs:element>
1123
+ <xs:element name="tripmembership" type="linkType" minOccurs="0"/>
1124
+ <xs:element name="softwareused" type="linkType" minOccurs="0"/>
1125
+ <xs:element name="alcoholbeforedive" minOccurs="0">
1126
+ <xs:complexType>
1127
+ <xs:sequence>
1128
+ <xs:element name="drink" type="drugType" maxOccurs="unbounded"/>
1129
+ </xs:sequence>
1130
+ </xs:complexType>
1131
+ </xs:element>
1132
+ <xs:element name="medicalbeforedive" minOccurs="0">
1133
+ <xs:complexType>
1134
+ <xs:sequence>
1135
+ <xs:element name="medicine" type="drugType" maxOccurs="unbounded"/>
1136
+ </xs:sequence>
1137
+ </xs:complexType>
1138
+ </xs:element>
1139
+ <xs:element name="nosuit" minOccurs="0">
1140
+ <xs:simpleType>
1141
+ <xs:restriction base="xs:string">
1142
+ <xs:length value="0"/>
1143
+ </xs:restriction>
1144
+ </xs:simpleType>
1145
+ </xs:element>
1146
+ <xs:element name="price" type="priceType" minOccurs="0"/>
1147
+ <xs:element minOccurs="0" name="inputprofile" type="inputprofileType"/>
1148
+ <xs:element minOccurs="0" name="plannedprofile" type="samplesType"/>
1149
+ <xs:element minOccurs="0" name="surfacepressure" type="xs:float"/>
1150
+ </xs:sequence>
1151
+ </xs:complexType>
1152
+ <xs:complexType name="informationafterdiveType">
1153
+ <xs:all>
1154
+ <xs:element name="surfaceintervalafterdive" type="surfaceintervalType" minOccurs="0"/>
1155
+ <xs:element name="lowesttemperature" type="xs:float" minOccurs="0"/>
1156
+ <xs:element name="greatestdepth" type="xs:float"/>
1157
+ <xs:element name="visibility" type="xs:float" minOccurs="0"/>
1158
+ <xs:element name="current" minOccurs="0">
1159
+ <xs:annotation>
1160
+ <xs:documentation source="./de/ch09s67.html"/>
1161
+ <xs:documentation source="./en/ch09s67.html" xml:lang="en"/>
1162
+ </xs:annotation>
1163
+ <xs:simpleType>
1164
+ <xs:restriction base="xs:string">
1165
+ <xs:enumeration value="no-current"/>
1166
+ <xs:enumeration value="very-mild-current"/>
1167
+ <xs:enumeration value="mild-current"/>
1168
+ <xs:enumeration value="moderate-current"/>
1169
+ <xs:enumeration value="hard-current"/>
1170
+ <xs:enumeration value="very-hard-current"/>
1171
+ </xs:restriction>
1172
+ </xs:simpleType>
1173
+ </xs:element>
1174
+ <xs:element name="diveplan" minOccurs="0">
1175
+ <xs:simpleType>
1176
+ <xs:restriction base="xs:string">
1177
+ <xs:enumeration value="none"/>
1178
+ <xs:enumeration value="table"/>
1179
+ <xs:enumeration value="dive-computer"/>
1180
+ <xs:enumeration value="another-diver"/>
1181
+ </xs:restriction>
1182
+ </xs:simpleType>
1183
+ </xs:element>
1184
+ <xs:element name="equipmentmalfunction" minOccurs="0">
1185
+ <xs:simpleType>
1186
+ <xs:restriction base="xs:string">
1187
+ <xs:enumeration value="none"/>
1188
+ <xs:enumeration value="face-mask"/>
1189
+ <xs:enumeration value="fins"/>
1190
+ <xs:enumeration value="weight-belt"/>
1191
+ <xs:enumeration value="buoyancy-control-device"/>
1192
+ <xs:enumeration value="thermal-protection"/>
1193
+ <xs:enumeration value="dive-computer"/>
1194
+ <xs:enumeration value="depth-gauge"/>
1195
+ <xs:enumeration value="pressure-gauge"/>
1196
+ <xs:enumeration value="breathing-apparatus"/>
1197
+ <xs:enumeration value="deco-reel"/>
1198
+ <xs:enumeration value="other"/>
1199
+ </xs:restriction>
1200
+ </xs:simpleType>
1201
+ </xs:element>
1202
+ <xs:element name="pressuredrop" type="xs:float" minOccurs="0"/>
1203
+ <xs:element name="problems" minOccurs="0">
1204
+ <xs:simpleType>
1205
+ <xs:restriction base="xs:string">
1206
+ <xs:enumeration value="none"/>
1207
+ <xs:enumeration value="equalisation"/>
1208
+ <xs:enumeration value="vertigo"/>
1209
+ <xs:enumeration value="out-of-air"/>
1210
+ <xs:enumeration value="buoyancy"/>
1211
+ <xs:enumeration value="shared-air"/>
1212
+ <xs:enumeration value="rapid-ascent"/>
1213
+ <xs:enumeration value="sea-sickness"/>
1214
+ <xs:enumeration value="other"/>
1215
+ </xs:restriction>
1216
+ </xs:simpleType>
1217
+ </xs:element>
1218
+ <xs:element name="program" minOccurs="0">
1219
+ <xs:simpleType>
1220
+ <xs:restriction base="xs:string">
1221
+ <xs:enumeration value="recreation"/>
1222
+ <xs:enumeration value="training"/>
1223
+ <xs:enumeration value="scientific"/>
1224
+ <xs:enumeration value="medical"/>
1225
+ <xs:enumeration value="commercial"/>
1226
+ <xs:enumeration value="military"/>
1227
+ <xs:enumeration value="competitive"/>
1228
+ <xs:enumeration value="other"/>
1229
+ </xs:restriction>
1230
+ </xs:simpleType>
1231
+ </xs:element>
1232
+ <xs:element name="thermalcomfort" minOccurs="0">
1233
+ <xs:simpleType>
1234
+ <xs:restriction base="xs:string">
1235
+ <xs:enumeration value="not-indicated"/>
1236
+ <xs:enumeration value="comfortable"/>
1237
+ <xs:enumeration value="cold"/>
1238
+ <xs:enumeration value="very-cold"/>
1239
+ <xs:enumeration value="hot"/>
1240
+ </xs:restriction>
1241
+ </xs:simpleType>
1242
+ </xs:element>
1243
+ <xs:element name="timer" minOccurs="0">
1244
+ <xs:complexType>
1245
+ <xs:simpleContent>
1246
+ <xs:extension base="xs:float">
1247
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1248
+ </xs:extension>
1249
+ </xs:simpleContent>
1250
+ </xs:complexType>
1251
+ </xs:element>
1252
+ <xs:element name="workload" minOccurs="0">
1253
+ <xs:simpleType>
1254
+ <xs:restriction base="xs:string">
1255
+ <xs:enumeration value="not-specified"/>
1256
+ <xs:enumeration value="resting"/>
1257
+ <xs:enumeration value="light"/>
1258
+ <xs:enumeration value="moderate"/>
1259
+ <xs:enumeration value="severe"/>
1260
+ <xs:enumeration value="exhausting"/>
1261
+ </xs:restriction>
1262
+ </xs:simpleType>
1263
+ </xs:element>
1264
+ <xs:element name="desaturationtime" type="xs:float" minOccurs="0"/>
1265
+ <xs:element name="noflighttime" type="xs:float" minOccurs="0"/>
1266
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1267
+ <xs:element name="rating" type="ratingType" minOccurs="0"/>
1268
+ <xs:element name="anysymptoms" minOccurs="0">
1269
+ <xs:complexType>
1270
+ <xs:sequence>
1271
+ <xs:element name="notes" type="notesType" maxOccurs="unbounded"/>
1272
+ </xs:sequence>
1273
+ </xs:complexType>
1274
+ </xs:element>
1275
+ <xs:element name="diveduration" type="xs:float"/>
1276
+ <xs:element name="divetable" minOccurs="0">
1277
+ <xs:simpleType>
1278
+ <xs:restriction base="xs:string">
1279
+ <xs:enumeration value="PADI"/>
1280
+ <xs:enumeration value="NAUI"/>
1281
+ <xs:enumeration value="BSAC"/>
1282
+ <xs:enumeration value="Buehlmann"/>
1283
+ <xs:enumeration value="Bühlmann"/>
1284
+ <xs:enumeration value="DCIEM"/>
1285
+ <xs:enumeration value="US-Navy"/>
1286
+ <xs:enumeration value="CSMD"/>
1287
+ <xs:enumeration value="COMEX"/>
1288
+ <xs:enumeration value="other"/>
1289
+ </xs:restriction>
1290
+ </xs:simpleType>
1291
+ </xs:element>
1292
+ <xs:element name="globalalarmsgiven" minOccurs="0">
1293
+ <xs:complexType>
1294
+ <xs:sequence>
1295
+ <xs:element name="globalalarm" maxOccurs="unbounded">
1296
+ <xs:simpleType>
1297
+ <xs:restriction base="xs:string">
1298
+ <xs:enumeration value="ascent-warning-too-long"/>
1299
+ <xs:enumeration value="sos-mode"/>
1300
+ <xs:enumeration value="work-too-hard"/>
1301
+ </xs:restriction>
1302
+ </xs:simpleType>
1303
+ </xs:element>
1304
+ </xs:sequence>
1305
+ </xs:complexType>
1306
+ </xs:element>
1307
+ <xs:element name="highestpo2" type="xs:float" minOccurs="0"/>
1308
+ <xs:element name="observations" type="observationsType" minOccurs="0"/>
1309
+ <xs:element name="averagedepth" type="xs:float" minOccurs="0"/>
1310
+ </xs:all>
1311
+ </xs:complexType>
1312
+ <xs:complexType name="selftestType">
1313
+ <xs:simpleContent>
1314
+ <xs:extension base="xs:string">
1315
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1316
+ </xs:extension>
1317
+ </xs:simpleContent>
1318
+ </xs:complexType>
1319
+ <xs:complexType name="surfaceintervalType">
1320
+ <xs:sequence>
1321
+ <xs:choice>
1322
+ <xs:element name="infinity">
1323
+ <xs:simpleType>
1324
+ <xs:restriction base="xs:string">
1325
+ <xs:length value="0"/>
1326
+ </xs:restriction>
1327
+ </xs:simpleType>
1328
+ </xs:element>
1329
+ <xs:element name="passedtime" type="xs:integer"/>
1330
+ </xs:choice>
1331
+ <xs:element name="wayaltitude" type="wayaltitudeType" minOccurs="0" maxOccurs="unbounded"/>
1332
+ <xs:element name="exposuretoaltitude" type="exposuretoaltitudeType" minOccurs="0"/>
1333
+ </xs:sequence>
1334
+ </xs:complexType>
1335
+ <xs:complexType name="wayaltitudeType">
1336
+ <xs:simpleContent>
1337
+ <xs:extension base="xs:float">
1338
+ <xs:attribute name="waytime" type="xs:float" use="required"/>
1339
+ </xs:extension>
1340
+ </xs:simpleContent>
1341
+ </xs:complexType>
1342
+ <xs:complexType name="exposuretoaltitudeType">
1343
+ <xs:all>
1344
+ <xs:element name="surfaceintervalbeforealtitudeexposure" type="xs:positiveInteger" minOccurs="0"/>
1345
+ <xs:element name="transportation">
1346
+ <xs:simpleType>
1347
+ <xs:restriction base="xs:string">
1348
+ <xs:enumeration value="commercial-aircraft"/>
1349
+ <xs:enumeration value="unpressurized-aircraft"/>
1350
+ <xs:enumeration value="medevac-aircraft"/>
1351
+ <xs:enumeration value="ground-transportation"/>
1352
+ <xs:enumeration value="helicopter"/>
1353
+ </xs:restriction>
1354
+ </xs:simpleType>
1355
+ </xs:element>
1356
+ <xs:element name="dateofflight" type="encapsulatedDateTimeType" minOccurs="0"/>
1357
+ <xs:element name="altitudeofexposure" type="xs:positiveInteger" minOccurs="0"/>
1358
+ <xs:element name="totallengthofexposure" type="xs:positiveInteger" minOccurs="0"/>
1359
+ </xs:all>
1360
+ </xs:complexType>
1361
+ <xs:complexType name="tankdataType">
1362
+ <xs:sequence>
1363
+ <xs:element name="analysedhe" type="xs:float" minOccurs="0"/>
1364
+ <xs:element name="analysedo2" type="xs:float" minOccurs="0"/>
1365
+ <xs:element name="breathingconsumptionvolume" type="xs:float" minOccurs="0"/>
1366
+ <xs:element name="link" type="linkType" minOccurs="0" maxOccurs="unbounded"/>
1367
+ <xs:element name="tankpressurebegin" type="xs:float"/>
1368
+ <xs:element name="tankpressureend" type="xs:float" minOccurs="0"/>
1369
+ <xs:element name="tankvolume" type="xs:float" minOccurs="0"/>
1370
+ </xs:sequence>
1371
+ </xs:complexType>
1372
+
1373
+ <xs:complexType name="waypointType">
1374
+ <xs:sequence>
1375
+ <xs:element name="alarm" minOccurs="0" maxOccurs="unbounded">
1376
+ <xs:complexType>
1377
+ <xs:simpleContent>
1378
+ <xs:extension base="alarmType">
1379
+ <xs:attribute name="level" type="xs:float"/>
1380
+ </xs:extension>
1381
+ </xs:simpleContent>
1382
+ </xs:complexType>
1383
+ </xs:element>
1384
+ <xs:element name="batterychargecondition" minOccurs="0" maxOccurs="unbounded">
1385
+ <xs:complexType>
1386
+ <xs:simpleContent>
1387
+ <xs:extension base="xs:float">
1388
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1389
+ <!-- Vermutlich nicht notwendig, deshalb ab v3.3.0 auskommentiert
1390
+ <xs:attribute name="deviceref" type="xs:IDREF" use="required"/>
1391
+ <xs:attribute name="tankref" type="xs:IDREF"/>
1392
+ Ende Vermutlich nicht notwendig, deshalb ab v3.3.0 auskommentiert -->
1393
+ </xs:extension>
1394
+ </xs:simpleContent>
1395
+ </xs:complexType>
1396
+ </xs:element>
1397
+ <xs:element name="batteryvoltage" minOccurs="0" maxOccurs="unbounded">
1398
+ <xs:complexType>
1399
+ <xs:simpleContent>
1400
+ <xs:extension base="xs:float">
1401
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1402
+ <!-- Vermutlich nicht notwendig, deshalb ab v3.3.0 auskommentiert
1403
+ <xs:attribute name="deviceref" type="xs:IDREF" use="required"/>
1404
+ <xs:attribute name="tankref" type="xs:IDREF"/>
1405
+ Ende Vermutlich nicht notwendig, deshalb ab v3.3.0 auskommentiert -->
1406
+ </xs:extension>
1407
+ </xs:simpleContent>
1408
+ </xs:complexType>
1409
+ </xs:element>
1410
+ <xs:element name="cns" type="xs:float" minOccurs="0"/>
1411
+ <xs:element name="decostop" minOccurs="0" maxOccurs="unbounded">
1412
+ <xs:complexType>
1413
+ <xs:attribute name="kind" use="required">
1414
+ <xs:simpleType>
1415
+ <xs:restriction base="xs:string">
1416
+ <xs:enumeration value="safety"/>
1417
+ <xs:enumeration value="mandatory"/>
1418
+ </xs:restriction>
1419
+ </xs:simpleType>
1420
+ </xs:attribute>
1421
+ <xs:attribute name="decodepth" type="xs:float" use="required"/>
1422
+ <xs:attribute name="duration" type="xs:float" use="required"/>
1423
+ </xs:complexType>
1424
+ </xs:element>
1425
+ <xs:element name="bodytemperature" type="xs:float" minOccurs="0"/>
1426
+ <xs:element name="calculatedpo2" type="xs:float" minOccurs="0"/>
1427
+ <xs:element name="depth" type="xs:float" minOccurs="0"/>
1428
+ <xs:element name="divetime" type="xs:float" minOccurs="0"/>
1429
+ <xs:element name="heading" type="xs:float" minOccurs="0"/>
1430
+ <xs:element name="heartrate" type="xs:float" minOccurs="0"/>
1431
+ <xs:element name="info" type="infoType" minOccurs="0"/>
1432
+ <xs:element name="otu" type="xs:float" minOccurs="0"/>
1433
+ <xs:element name="pulserate" type="xs:float" minOccurs="0"/>
1434
+ <xs:element name="remainingbottomtime" type="xs:float" minOccurs="0"/>
1435
+ <xs:element name="remainingo2time" type="xs:float" minOccurs="0"/>
1436
+ <xs:element name="setgfhigh" type="xs:float" minOccurs="0"/>
1437
+ <xs:element name="setgflow" type="xs:float" minOccurs="0"/>
1438
+ <xs:element name="setr0" type="xs:float" minOccurs="0"/>
1439
+ <xs:element name="timetosurface" type="xs:float" minOccurs="0"/>
1440
+ <xs:element name="setmarker" type="xs:string" minOccurs="0"/>
1441
+ <xs:element name="scrubber" minOccurs="0" maxOccurs="unbounded">
1442
+ <xs:complexType>
1443
+ <xs:simpleContent>
1444
+ <xs:extension base="xs:float">
1445
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1446
+ <xs:attribute name="units" type="xs:string" use="required"/>
1447
+ </xs:extension>
1448
+ </xs:simpleContent>
1449
+ </xs:complexType>
1450
+ </xs:element>
1451
+ <xs:element name="setpo2" minOccurs="0">
1452
+ <xs:complexType>
1453
+ <xs:simpleContent>
1454
+ <xs:extension base="xs:float">
1455
+ <xs:attribute name="setby" use="required">
1456
+ <xs:simpleType>
1457
+ <xs:restriction base="xs:string">
1458
+ <xs:enumeration value="user"/>
1459
+ <xs:enumeration value="computer"/>
1460
+ </xs:restriction>
1461
+ </xs:simpleType>
1462
+ </xs:attribute>
1463
+ </xs:extension>
1464
+ </xs:simpleContent>
1465
+ </xs:complexType>
1466
+ </xs:element>
1467
+ <xs:element name="switchdecomodel" type="linkType" minOccurs="0"/>
1468
+ <xs:element name="switchmix" type="linkType" minOccurs="0"/>
1469
+ <xs:element name="switchtank" type="linkType" minOccurs="0"/>
1470
+ <xs:element name="tankpressure" minOccurs="0" maxOccurs="unbounded">
1471
+ <xs:complexType>
1472
+ <xs:simpleContent>
1473
+ <xs:extension base="xs:float">
1474
+ <xs:attribute name="ref" type="xs:IDREF"/>
1475
+ </xs:extension>
1476
+ </xs:simpleContent>
1477
+ </xs:complexType>
1478
+ </xs:element>
1479
+ <xs:element name="temperature" type="xs:float" minOccurs="0"/>
1480
+ <xs:element name="timer" minOccurs="0" maxOccurs="unbounded">
1481
+ <xs:complexType>
1482
+ <xs:simpleContent>
1483
+ <xs:extension base="xs:float">
1484
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
1485
+ </xs:extension>
1486
+ </xs:simpleContent>
1487
+ </xs:complexType>
1488
+ </xs:element>
1489
+ <xs:element name="divemode" minOccurs="0">
1490
+ <xs:complexType>
1491
+ <xs:attribute name="type" type="divemodeType"/>
1492
+ </xs:complexType>
1493
+ </xs:element>
1494
+ <xs:element name="gradientfactor" minOccurs="0">
1495
+ <xs:complexType>
1496
+ <xs:simpleContent>
1497
+ <xs:extension base="xs:float">
1498
+ <xs:attribute name="tissue" type="xs:int"/>
1499
+ </xs:extension>
1500
+ </xs:simpleContent>
1501
+ </xs:complexType>
1502
+ </xs:element>
1503
+ <xs:element name="ppco2" maxOccurs="unbounded" minOccurs="0">
1504
+ <xs:complexType>
1505
+ <xs:simpleContent>
1506
+ <xs:extension base="xs:float">
1507
+ <xs:attribute name="ref" type="xs:IDREF"/>
1508
+ </xs:extension>
1509
+ </xs:simpleContent>
1510
+ </xs:complexType>
1511
+ </xs:element>
1512
+ <xs:element name="ppo2" maxOccurs="unbounded" minOccurs="0">
1513
+ <xs:complexType>
1514
+ <xs:simpleContent>
1515
+ <xs:extension base="xs:float">
1516
+ <xs:attribute name="ref" type="xs:IDREF"/>
1517
+ </xs:extension>
1518
+ </xs:simpleContent>
1519
+ </xs:complexType>
1520
+ </xs:element>
1521
+ <xs:element name="nodecotime" minOccurs="0" type="xs:float"/>
1522
+ </xs:sequence>
1523
+ </xs:complexType>
1524
+ <xs:simpleType name="alarmType">
1525
+ <xs:restriction base="xs:string">
1526
+ <xs:enumeration value="ascent"/>
1527
+ <xs:enumeration value="breath"/>
1528
+ <xs:enumeration value="deco"/>
1529
+ <xs:enumeration value="error"/>
1530
+ <xs:enumeration value="link"/>
1531
+ <xs:enumeration value="microbubbles"/>
1532
+ <xs:enumeration value="rbt"/>
1533
+ <xs:enumeration value="skincooling"/>
1534
+ <xs:enumeration value="surface"/>
1535
+ </xs:restriction>
1536
+ </xs:simpleType>
1537
+ <xs:complexType name="drugType">
1538
+ <xs:complexContent>
1539
+ <xs:extension base="simpleNamedType">
1540
+ <xs:sequence>
1541
+ <xs:element name="periodicallytaken" minOccurs="0">
1542
+ <xs:simpleType>
1543
+ <xs:restriction base="xs:string">
1544
+ <xs:enumeration value="no"/>
1545
+ <xs:enumeration value="yes"/>
1546
+ </xs:restriction>
1547
+ </xs:simpleType>
1548
+ </xs:element>
1549
+ <xs:element name="timespanbeforedive" type="xs:float" minOccurs="0"/>
1550
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1551
+ </xs:sequence>
1552
+ </xs:extension>
1553
+ </xs:complexContent>
1554
+ </xs:complexType>
1555
+ <xs:complexType name="applicationdataType">
1556
+ <xs:all>
1557
+ <xs:element name="apdiving" minOccurs="0">
1558
+ <xs:complexType>
1559
+ <xs:sequence>
1560
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1561
+ </xs:sequence>
1562
+ </xs:complexType>
1563
+ </xs:element>
1564
+ <xs:element name="decotrainer" minOccurs="0">
1565
+ <xs:complexType>
1566
+ <xs:sequence>
1567
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1568
+ </xs:sequence>
1569
+ </xs:complexType>
1570
+ </xs:element>
1571
+ <xs:element name="hargikas" minOccurs="0">
1572
+ <xs:complexType>
1573
+ <xs:sequence>
1574
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1575
+ </xs:sequence>
1576
+ </xs:complexType>
1577
+ </xs:element>
1578
+ <xs:element name="heinrichsweikamp" minOccurs="0">
1579
+ <xs:complexType>
1580
+ <xs:sequence>
1581
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1582
+ </xs:sequence>
1583
+ </xs:complexType>
1584
+ </xs:element>
1585
+ <xs:element name="ratio" minOccurs="0">
1586
+ <xs:complexType>
1587
+ <xs:sequence>
1588
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1589
+ </xs:sequence>
1590
+ </xs:complexType>
1591
+ </xs:element>
1592
+ <xs:element name="tausim" minOccurs="0">
1593
+ <xs:complexType>
1594
+ <xs:sequence>
1595
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1596
+ </xs:sequence>
1597
+ </xs:complexType>
1598
+ </xs:element>
1599
+ <xs:element name="tautabu" minOccurs="0">
1600
+ <xs:complexType>
1601
+ <xs:sequence>
1602
+ <xs:any namespace="##other" maxOccurs="unbounded" processContents="skip"/>
1603
+ </xs:sequence>
1604
+ </xs:complexType>
1605
+ </xs:element>
1606
+ </xs:all>
1607
+ </xs:complexType>
1608
+ <xs:complexType name="observationsType">
1609
+ <xs:complexContent>
1610
+ <xs:extension base="ecologyType">
1611
+ <xs:sequence>
1612
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1613
+ </xs:sequence>
1614
+ </xs:extension>
1615
+ </xs:complexContent>
1616
+ </xs:complexType>
1617
+ <!--
1618
+ *** tablegeneration
1619
+ -->
1620
+ <xs:element name="tablegeneration">
1621
+ <xs:complexType>
1622
+ <xs:all>
1623
+ <xs:element name="calculateprofile" minOccurs="0">
1624
+ <xs:complexType>
1625
+ <xs:sequence>
1626
+ <xs:element name="profile" type="baseCalculationType" maxOccurs="unbounded"/>
1627
+ </xs:sequence>
1628
+ </xs:complexType>
1629
+ </xs:element>
1630
+ <xs:element name="calculatetable" minOccurs="0">
1631
+ <xs:complexType>
1632
+ <xs:sequence>
1633
+ <xs:element name="table" type="tableType" maxOccurs="unbounded"/>
1634
+ </xs:sequence>
1635
+ </xs:complexType>
1636
+ </xs:element>
1637
+ <xs:element name="calculatebottomtimetable" minOccurs="0">
1638
+ <xs:complexType>
1639
+ <xs:sequence>
1640
+ <xs:element name="bottomtimetable" type="bottomtimetableType" maxOccurs="unbounded"/>
1641
+ </xs:sequence>
1642
+ </xs:complexType>
1643
+ </xs:element>
1644
+ </xs:all>
1645
+ </xs:complexType>
1646
+ </xs:element>
1647
+ <xs:complexType name="outputType">
1648
+ <xs:all>
1649
+ <xs:element name="lingo" type="xs:string" minOccurs="0"/>
1650
+ <xs:element name="fileformat" type="xs:string" minOccurs="0"/>
1651
+ <xs:element name="filename" type="xs:string" minOccurs="0"/>
1652
+ <xs:element name="headline" type="xs:string" minOccurs="0"/>
1653
+ <xs:element name="remark" type="xs:string" minOccurs="0"/>
1654
+ </xs:all>
1655
+ </xs:complexType>
1656
+ <xs:complexType name="inputprofileType">
1657
+ <xs:sequence>
1658
+ <xs:element name="link" type="linkType" minOccurs="0" maxOccurs="unbounded"/>
1659
+ <xs:element name="waypoint" type="waypointType" maxOccurs="unbounded"/>
1660
+ </xs:sequence>
1661
+ </xs:complexType>
1662
+ <xs:complexType name="baseCalculationType">
1663
+ <xs:complexContent>
1664
+ <xs:extension base="ID_TYPE">
1665
+ <xs:sequence>
1666
+ <xs:element name="title" type="xs:string" minOccurs="0"/>
1667
+ <xs:element name="link" minOccurs="0" maxOccurs="unbounded" type="linkType"/>
1668
+ <xs:element name="surfaceintervalafterdive" type="surfaceintervalType" minOccurs="0"/>
1669
+ <xs:element name="surfaceintervalbeforedive" type="surfaceintervalType" minOccurs="0"/>
1670
+ <xs:element name="density" type="xs:float" minOccurs="0"/>
1671
+ <xs:element name="maximumascendingrate" type="xs:float" minOccurs="0"/>
1672
+ <xs:element name="output" type="outputType" minOccurs="0"/>
1673
+ <xs:element name="applicationdata" type="applicationdataType" minOccurs="0"/>
1674
+ <xs:element name="decomodel" type="xs:string" minOccurs="0"/>
1675
+ <xs:element name="deepstops" type="deepstopsType" minOccurs="0"/>
1676
+ <xs:element name="mixchange" type="mixchangeType" minOccurs="0"/>
1677
+ <xs:element name="inputprofile" type="inputprofileType" minOccurs="0"/>
1678
+ </xs:sequence>
1679
+ </xs:extension>
1680
+ </xs:complexContent>
1681
+ </xs:complexType>
1682
+ <xs:complexType name="mixchangeType">
1683
+ <xs:all>
1684
+ <xs:element name="ascent" minOccurs="0">
1685
+ <xs:complexType>
1686
+ <xs:sequence>
1687
+ <xs:element name="waypoint" type="waypointType" maxOccurs="unbounded"/>
1688
+ </xs:sequence>
1689
+ </xs:complexType>
1690
+ </xs:element>
1691
+ <xs:element name="descent" minOccurs="0">
1692
+ <xs:complexType>
1693
+ <xs:sequence>
1694
+ <xs:element name="waypoint" type="waypointType" maxOccurs="unbounded"/>
1695
+ </xs:sequence>
1696
+ </xs:complexType>
1697
+ </xs:element>
1698
+ </xs:all>
1699
+ </xs:complexType>
1700
+ <!--
1701
+ *** tablegeneration calculatetable
1702
+ -->
1703
+ <xs:complexType name="tableType">
1704
+ <xs:complexContent>
1705
+ <xs:extension base="baseCalculationType">
1706
+ <xs:sequence>
1707
+ <xs:element name="tablescope" type="tablescopeType"/>
1708
+ </xs:sequence>
1709
+ </xs:extension>
1710
+ </xs:complexContent>
1711
+ </xs:complexType>
1712
+ <xs:complexType name="tablescopeType">
1713
+ <xs:all>
1714
+ <xs:element name="altitude" type="xs:float" minOccurs="0"/>
1715
+ <xs:element name="divedepthbegin" type="xs:float" minOccurs="0"/>
1716
+ <xs:element name="divedepthend" type="xs:float" minOccurs="0"/>
1717
+ <xs:element name="divedepthstep" type="xs:float" minOccurs="0"/>
1718
+ <xs:element name="bottomtimemaximum" type="xs:float" minOccurs="0"/>
1719
+ <xs:element name="bottomtimeminimum" type="xs:float" minOccurs="0"/>
1720
+ <xs:element name="bottomtimestepbegin" type="xs:float" minOccurs="0"/>
1721
+ <xs:element name="bottomtimestepend" type="xs:float" minOccurs="0"/>
1722
+ </xs:all>
1723
+ </xs:complexType>
1724
+ <!--
1725
+ *** tablegeneration calculatebottomtimetable
1726
+ -->
1727
+ <xs:complexType name="bottomtimetableType">
1728
+ <xs:complexContent>
1729
+ <xs:extension base="ID_TYPE">
1730
+ <xs:sequence>
1731
+ <xs:element name="title" minOccurs="0"/>
1732
+ <xs:element name="link" type="linkType" minOccurs="0" maxOccurs="unbounded"/>
1733
+ <xs:element name="output" type="outputType" minOccurs="0"/>
1734
+ <xs:element name="applicationdata" type="applicationdataType" minOccurs="0"/>
1735
+ <xs:element name="bottomtimetablescope" type="bottomtimetablescopeType"/>
1736
+ </xs:sequence>
1737
+ </xs:extension>
1738
+ </xs:complexContent>
1739
+ </xs:complexType>
1740
+ <xs:complexType name="bottomtimetablescopeType">
1741
+ <xs:all>
1742
+ <xs:element name="divedepthbegin" type="xs:float"/>
1743
+ <xs:element name="divedepthend" type="xs:float"/>
1744
+ <xs:element name="divedepthstep" type="xs:float"/>
1745
+ <xs:element name="breathingconsumptionvolumebegin" type="xs:float"/>
1746
+ <xs:element name="breathingconsumptionvolumeend" type="xs:float"/>
1747
+ <xs:element name="breathingconsumptionvolumestep" type="xs:float"/>
1748
+ <xs:element name="tankvolumebegin" type="xs:float"/>
1749
+ <xs:element name="tankvolumeend" type="xs:float"/>
1750
+ <xs:element name="tankvolumestep" type="xs:float"/>
1751
+ <xs:element name="tankpressurebegin" type="xs:float"/>
1752
+ <xs:element name="tankpressurereserve" type="xs:float"/>
1753
+ </xs:all>
1754
+ </xs:complexType>
1755
+ <!--
1756
+ *** divetrip
1757
+ -->
1758
+ <xs:element name="divetrip">
1759
+ <xs:complexType>
1760
+ <xs:sequence>
1761
+ <xs:element name="trip" type="tripType" maxOccurs="unbounded"/>
1762
+ </xs:sequence>
1763
+ </xs:complexType>
1764
+ </xs:element>
1765
+ <xs:complexType name="tripType">
1766
+ <xs:complexContent>
1767
+ <xs:extension base="namedType">
1768
+ <xs:sequence>
1769
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
1770
+ <xs:element name="trippart" type="trippartType" maxOccurs="unbounded"/>
1771
+ </xs:sequence>
1772
+ </xs:extension>
1773
+ </xs:complexContent>
1774
+ </xs:complexType>
1775
+ <xs:complexType name="trippartType">
1776
+ <xs:complexContent>
1777
+ <xs:extension base="simpleNamedType">
1778
+ <xs:sequence>
1779
+ <xs:element name="dateoftrip" minOccurs="0">
1780
+ <xs:complexType>
1781
+ <xs:attribute name="startdate" type="xs:dateTime" use="required"/>
1782
+ <xs:attribute name="enddate" type="xs:dateTime" use="required"/>
1783
+ </xs:complexType>
1784
+ </xs:element>
1785
+ <xs:element name="geography" type="geographyType" minOccurs="0"/>
1786
+ <xs:choice minOccurs="0">
1787
+ <xs:sequence>
1788
+ <xs:element name="accomodation" type="accommodationType"/>
1789
+ </xs:sequence>
1790
+ <xs:sequence>
1791
+ <xs:element name="operator" type="operatorType"/>
1792
+ <xs:element name="vessel" type="vesselType"/>
1793
+ </xs:sequence>
1794
+ </xs:choice>
1795
+ <xs:element name="link" type="linkType" minOccurs="0"/>
1796
+ <xs:element name="relateddives" minOccurs="0">
1797
+ <xs:complexType>
1798
+ <xs:sequence>
1799
+ <xs:element name="link" type="linkType" maxOccurs="unbounded"/>
1800
+ </xs:sequence>
1801
+ </xs:complexType>
1802
+ </xs:element>
1803
+ <xs:element name="pricedivepackage" type="priceperdivepackageType" minOccurs="0"/>
1804
+ <xs:element name="priceperdive" type="priceType" minOccurs="0"/>
1805
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
1806
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1807
+ </xs:sequence>
1808
+ <xs:attribute name="type"/>
1809
+ </xs:extension>
1810
+ </xs:complexContent>
1811
+ </xs:complexType>
1812
+ <xs:complexType name="accommodationType">
1813
+ <xs:complexContent>
1814
+ <xs:extension base="namedType">
1815
+ <xs:sequence>
1816
+ <xs:element name="category" type="xs:string" minOccurs="0"/>
1817
+ <xs:element name="address" type="addressType" minOccurs="0"/>
1818
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
1819
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
1820
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1821
+ </xs:sequence>
1822
+ </xs:extension>
1823
+ </xs:complexContent>
1824
+ </xs:complexType>
1825
+ <xs:complexType name="vesselType">
1826
+ <xs:complexContent>
1827
+ <xs:extension base="namedType">
1828
+ <xs:sequence>
1829
+ <xs:element name="shiptype" type="xs:string" minOccurs="0"/>
1830
+ <xs:element name="marina" type="xs:string" minOccurs="0"/>
1831
+ <xs:element name="address" type="addressType" minOccurs="0"/>
1832
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
1833
+ <xs:element name="shipdimension" type="dimensionType" minOccurs="0"/>
1834
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
1835
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1836
+ </xs:sequence>
1837
+ </xs:extension>
1838
+ </xs:complexContent>
1839
+ </xs:complexType>
1840
+ <xs:complexType name="operatorType">
1841
+ <xs:complexContent>
1842
+ <xs:extension base="simpleNamedType">
1843
+ <xs:sequence>
1844
+ <xs:element name="address" type="addressType" minOccurs="0"/>
1845
+ <xs:element name="contact" type="contactType" minOccurs="0"/>
1846
+ <xs:element name="rating" type="ratingType" minOccurs="0" maxOccurs="unbounded"/>
1847
+ <xs:element name="notes" type="notesType" minOccurs="0"/>
1848
+ </xs:sequence>
1849
+ </xs:extension>
1850
+ </xs:complexContent>
1851
+ </xs:complexType>
1852
+ <!--
1853
+ *** divecomputercontrol
1854
+ -->
1855
+ <xs:element name="divecomputercontrol">
1856
+ <xs:complexType>
1857
+ <xs:sequence>
1858
+ <xs:element name="setdcdata" type="setdcdataType" minOccurs="0" maxOccurs="1"/>
1859
+ <xs:element name="getdcdata" type="getdcdataType" minOccurs="0" maxOccurs="1"/>
1860
+ <xs:element name="divecomputerdump" minOccurs="0" maxOccurs="unbounded" type="divecomputerdumpType">
1861
+ </xs:element>
1862
+ </xs:sequence>
1863
+ </xs:complexType>
1864
+ </xs:element>
1865
+ <xs:complexType name="setdcdataType">
1866
+ <xs:sequence>
1867
+ <xs:element name="setdcalarmtime" type="dcalarmWithTimeType" minOccurs="0" maxOccurs="unbounded"/>
1868
+ <xs:element name="setdcaltitude" type="xs:float" minOccurs="0"/>
1869
+ <xs:element name="setdcbuddydata" type="dcbuddydataType" minOccurs="0"/>
1870
+ <xs:element name="setdcdatetime" type="encapsulatedDateTimeType" minOccurs="0"/>
1871
+ <xs:element name="setdcdecomodel" type="dcdecomodelType" minOccurs="0"/>
1872
+ <xs:element name="setdcdivedepthalarm" type="dcalarmWithDepthType" minOccurs="0" maxOccurs="unbounded"/>
1873
+ <xs:element name="setdcdivepo2alarm" type="dcdivepo2alarmType" minOccurs="0" maxOccurs="unbounded"/>
1874
+ <xs:element name="setdcdivesitedata" type="dcdivesitedataType" minOccurs="0"/>
1875
+ <xs:element name="setdcdivetimealarm" type="dcdivetimealarmType" minOccurs="0" maxOccurs="unbounded"/>
1876
+ <xs:element name="setdcendndtalarm" type="dcendndtalarmType" minOccurs="0"/>
1877
+ <xs:element name="setdcgasdefinitionsdata" type="dcgasdefinitionsdataType" minOccurs="0"/>
1878
+ <xs:element name="setdcownerdata" type="markerType" minOccurs="0"/>
1879
+ <xs:element name="setdcpassword" type="xs:string" minOccurs="0"/>
1880
+ <xs:element name="setdcgeneratordata" type="markerType" minOccurs="0"/>
1881
+ </xs:sequence>
1882
+ </xs:complexType>
1883
+ <xs:complexType name="dcgasdefinitionsdataType">
1884
+ <xs:sequence>
1885
+ <xs:element name="setdcallgasdefinitions" type="markerType" minOccurs="0" maxOccurs="1"/>
1886
+ <xs:element name="setdcgasdata" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
1887
+ </xs:sequence>
1888
+ </xs:complexType>
1889
+ <xs:complexType name="dcendndtalarmType">
1890
+ <xs:sequence>
1891
+ <xs:element name="dcalarm" type="dcalarmType"/>
1892
+ </xs:sequence>
1893
+ </xs:complexType>
1894
+ <xs:complexType name="dcdivepo2alarmType">
1895
+ <xs:sequence>
1896
+ <xs:element name="maximumpo2" type="xs:float"/>
1897
+ <xs:element name="dcalarm" type="dcalarmType"/>
1898
+ </xs:sequence>
1899
+ </xs:complexType>
1900
+ <xs:complexType name="dcdivesitedataType">
1901
+ <xs:attribute name="divesite" type="xs:IDREF" use="required"/>
1902
+ </xs:complexType>
1903
+ <xs:complexType name="dcbuddydataType">
1904
+ <xs:attribute name="buddy" type="xs:IDREF" use="required"/>
1905
+ </xs:complexType>
1906
+ <xs:complexType name="dcdivedepthalarmType">
1907
+ <xs:all>
1908
+ <xs:element name="dcalarmdepth" type="xs:float"/>
1909
+ <xs:element name="dcalarm" type="dcalarmType"/>
1910
+ </xs:all>
1911
+ </xs:complexType>
1912
+ <xs:complexType name="dcdivetimealarmType">
1913
+ <xs:all>
1914
+ <xs:element name="timespan" type="xs:float"/>
1915
+ <xs:element name="dcalarm" type="dcalarmType"/>
1916
+ </xs:all>
1917
+ </xs:complexType>
1918
+ <xs:complexType name="dcalarmtimeType">
1919
+ <xs:all>
1920
+ <xs:element name="acknowledge" minOccurs="0">
1921
+ <xs:simpleType>
1922
+ <xs:restriction base="xs:string">
1923
+ <xs:length value="0"/>
1924
+ </xs:restriction>
1925
+ </xs:simpleType>
1926
+ </xs:element>
1927
+ <xs:element name="period" type="xs:float" minOccurs="0"/>
1928
+ <xs:element name="alarmType" type="xs:unsignedShort"/>
1929
+ </xs:all>
1930
+ </xs:complexType>
1931
+ <xs:complexType name="dcalarmWithTimeType">
1932
+ <xs:complexContent>
1933
+ <xs:extension base="encapsulatedDateTimeType">
1934
+ <xs:sequence>
1935
+ <xs:element name="dcalarm" type="dcalarmType"/>
1936
+ </xs:sequence>
1937
+ </xs:extension>
1938
+ </xs:complexContent>
1939
+ </xs:complexType>
1940
+ <xs:complexType name="dcalarmWithDepthType">
1941
+ <xs:sequence>
1942
+ <xs:element name="dcalarmdepth" type="xs:float"/>
1943
+ <xs:element name="dcalarm" type="dcalarmType"/>
1944
+ </xs:sequence>
1945
+ </xs:complexType>
1946
+ <xs:complexType name="dcdecomodelType">
1947
+ <xs:complexContent>
1948
+ <xs:extension base="simpleNamedType">
1949
+ <xs:sequence>
1950
+ <xs:element name="applicationdata" type="applicationdataType" minOccurs="0"/>
1951
+ </xs:sequence>
1952
+ </xs:extension>
1953
+ </xs:complexContent>
1954
+ </xs:complexType>
1955
+ <xs:complexType name="dcalarmType">
1956
+ <xs:all>
1957
+ <xs:element name="acknowledge" minOccurs="0" type="markerType"> </xs:element>
1958
+ <xs:element name="period" type="xs:float" minOccurs="0"/>
1959
+ <xs:element name="alarmType" type="xs:unsignedShort"/>
1960
+ </xs:all>
1961
+ </xs:complexType>
1962
+ <xs:complexType name="getdcdataType">
1963
+ <xs:all>
1964
+ <xs:element name="getdcalldata" type="markerType" minOccurs="0"/>
1965
+ <xs:element name="getdcgeneratordata" type="markerType" minOccurs="0"/>
1966
+ <xs:element name="getdcownerdata" type="markerType" minOccurs="0"/>
1967
+ <xs:element name="getdcbuddydata" type="markerType" minOccurs="0"/>
1968
+ <xs:element name="getdcgasdefinitionsdata" type="markerType" minOccurs="0"/>
1969
+ <xs:element name="getdcdivesitedata" type="markerType" minOccurs="0"/>
1970
+ <xs:element name="getdcdivetripdata" type="markerType" minOccurs="0"/>
1971
+ <xs:element name="getdcprofiledata" type="markerType" minOccurs="0"/>
1972
+ </xs:all>
1973
+ </xs:complexType>
1974
+ <xs:complexType name="divecomputerdumpType">
1975
+ <xs:all>
1976
+ <xs:element name="link" type="linkType"/>
1977
+ <xs:element name="datetime" type="xs:dateTime"/>
1978
+ <xs:element name="dcdump" type="xs:base64Binary"/>
1979
+ </xs:all>
1980
+ </xs:complexType>
1981
+ <xs:complexType name="buehlmannType">
1982
+ <xs:complexContent>
1983
+ <xs:extension base="ID_TYPE">
1984
+ <xs:sequence>
1985
+ <xs:element name="tissue" type="tissueType" maxOccurs="unbounded"/>
1986
+ <xs:element name="gradientfactorhigh" type="xs:float" minOccurs="0"/>
1987
+ <xs:element name="gradientfactorlow" type="xs:float" minOccurs="0"/>
1988
+ </xs:sequence>
1989
+ </xs:extension>
1990
+ </xs:complexContent>
1991
+ </xs:complexType>
1992
+ <xs:complexType name="rgbmType">
1993
+ <xs:complexContent>
1994
+ <xs:extension base="ID_TYPE">
1995
+ <xs:sequence>
1996
+ <xs:element maxOccurs="unbounded" name="tissue" type="tissueType"/>
1997
+ </xs:sequence>
1998
+ </xs:extension>
1999
+ </xs:complexContent>
2000
+ </xs:complexType>
2001
+ <xs:complexType name="vpmType">
2002
+ <xs:complexContent>
2003
+ <xs:extension base="ID_TYPE">
2004
+ <xs:sequence>
2005
+ <xs:element minOccurs="0" name="gamma" type="xs:float"/>
2006
+ <xs:element minOccurs="0" name="gc" type="xs:float"/>
2007
+ <xs:element minOccurs="0" name="lambda" type="xs:float"/>
2008
+ <xs:element minOccurs="0" name="r0" type="xs:float"/>
2009
+ <xs:element maxOccurs="unbounded" name="tissue" type="tissueType"/>
2010
+ </xs:sequence>
2011
+ </xs:extension>
2012
+ </xs:complexContent>
2013
+ </xs:complexType>
2014
+ <xs:complexType name="infoType">
2015
+ <xs:attribute name="ref" type="xs:IDREF" use="required"/>
2016
+ <xs:attribute name="level" use="required">
2017
+ <xs:simpleType>
2018
+ <xs:restriction base="xs:string">
2019
+ <xs:enumeration value="i"/>
2020
+ <xs:enumeration value="I"/>
2021
+ <xs:enumeration value="a"/>
2022
+ <xs:enumeration value="A"/>
2023
+ <xs:enumeration value="c"/>
2024
+ <xs:enumeration value="C"/>
2025
+ <xs:enumeration value="w"/>
2026
+ <xs:enumeration value="W"/>
2027
+ <xs:enumeration value="e"/>
2028
+ <xs:enumeration value="E"/>
2029
+ </xs:restriction>
2030
+ </xs:simpleType>
2031
+ </xs:attribute>
2032
+ <!-- erst einmal auskommentieren
2033
+ Wenn das so hier steht, sind zwar diese Schlüsselwörter erlaubt,
2034
+ aber kein anderer, allgemeiner Text. Wenn das Attribut einfach
2035
+ nur als "string" deklariert wird, sind diese Schlüsselwörter
2036
+ natürlich auch darin enthalten - nur deren korrekte Schreibweise
2037
+ kann nicht einfach überprüft werden. Sollte erst einmal keine
2038
+ Rolle spielen...
2039
+ <xs:attribute name="type" use="required">
2040
+ <xs:simpleType>
2041
+ <xs:restriction base="xs:string">
2042
+ <xs:enumeration value="ascent"/>
2043
+ <xs:enumeration value="breath"/>
2044
+ <xs:enumeration value="deco"/>
2045
+ <xs:enumeration value="error"/>
2046
+ <xs:enumeration value="link"/>
2047
+ <xs:enumeration value="microbubbles"/>
2048
+ <xs:enumeration value="rbt"/>
2049
+ <xs:enumeration value="scincooling"/>
2050
+ <xs:enumeration value="surface"/>
2051
+ </xs:restriction>
2052
+ </xs:simpleType>
2053
+ </xs:attribute>
2054
+ Ende erst einmal auskommentieren -->
2055
+ <xs:attribute name="type" type="xs:string"/>
2056
+ <xs:attribute name="value" type="xs:float"/>
2057
+ <xs:attribute name="units" type="xs:string"/>
2058
+ </xs:complexType>
2059
+ <xs:complexType name="setsafetystopType">
2060
+ <xs:attribute name="depth" type="xs:float" use="required"/>
2061
+ <xs:attribute name="period" type="xs:float" use="required"/>
2062
+ </xs:complexType>
2063
+ <xs:complexType name="tissueType">
2064
+ <xs:attribute name="gas" use="required">
2065
+ <xs:simpleType>
2066
+ <xs:restriction base="xs:string">
2067
+ <xs:enumeration value="h2"/>
2068
+ <xs:enumeration value="he"/>
2069
+ <xs:enumeration value="n2"/>
2070
+ </xs:restriction>
2071
+ </xs:simpleType>
2072
+ </xs:attribute>
2073
+ <xs:attribute name="number" type="xs:int" use="required"/>
2074
+ <xs:attribute name="halflife" type="xs:float" use="required"/>
2075
+ <xs:attribute name="a" type="xs:float" use="required"/>
2076
+ <xs:attribute name="b" type="xs:float" use="required"/>
2077
+ </xs:complexType>
2078
+ <xs:complexType name="deepstopsType">
2079
+ <xs:sequence>
2080
+ <xs:element name="deepstoptime" type="xs:float" minOccurs="0"/>
2081
+ <xs:element name="deepstoptype" minOccurs="1">
2082
+ <xs:simpleType>
2083
+ <xs:restriction base="xs:string">
2084
+ <xs:enumeration value="off"/>
2085
+ <xs:enumeration value="other"/>
2086
+ <xs:enumeration value="pyle"/>
2087
+ </xs:restriction>
2088
+ </xs:simpleType>
2089
+ </xs:element>
2090
+ </xs:sequence>
2091
+ </xs:complexType>
2092
+ <xs:complexType name="samplesType">
2093
+ <xs:sequence>
2094
+ <xs:element name="waypoint" type="waypointType" maxOccurs="unbounded"/>
2095
+ </xs:sequence>
2096
+ <!-- keine Attribute bei samples... KS 09.01.2012
2097
+ <xs:attribute name="startdivemode" use="required" type="divemodeType"> </xs:attribute>
2098
+ <xs:attribute name="startmix" type="xs:string" use="required"/>
2099
+ -->
2100
+ </xs:complexType>
2101
+ <xs:complexType name="rebreatherType">
2102
+ <xs:complexContent>
2103
+ <xs:extension base="equipmentPieceType">
2104
+ <xs:sequence>
2105
+ <xs:element name="battery" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
2106
+ <xs:element name="co2sensor" maxOccurs="unbounded" minOccurs="0" type="equipmentPieceType"/>
2107
+ <xs:element name="o2sensor" maxOccurs="unbounded" minOccurs="0" type="equipmentPieceType"/>
2108
+ <xs:element name="scrubbermonitor" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
2109
+ <xs:element name="temperaturesensor" maxOccurs="unbounded" minOccurs="0" type="equipmentPieceType"/>
2110
+ <xs:element name="timerdevice" maxOccurs="unbounded" minOccurs="0" type="ID_TYPE"/>
2111
+ </xs:sequence>
2112
+ </xs:extension>
2113
+ </xs:complexContent>
2114
+ </xs:complexType>
2115
+ <xs:simpleType name="divemodeType">
2116
+ <xs:restriction base="xs:string">
2117
+ <xs:enumeration value="apnea"/>
2118
+ <xs:enumeration value="apnoe"/>
2119
+ <xs:enumeration value="apnoea"/>
2120
+ <xs:enumeration value="closedcircuit"/>
2121
+ <xs:enumeration value="gauge"/>
2122
+ <xs:enumeration value="opencircuit"/>
2123
+ <xs:enumeration value="semiclosedcircuit"/>
2124
+ </xs:restriction>
2125
+ </xs:simpleType>
2126
+ </xs:schema>