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