cqm-validators 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/Gemfile +6 -0
  4. data/LICENSE.txt +201 -0
  5. data/QRDA_Schematron_License.txt +191 -0
  6. data/README.md +40 -0
  7. data/Rakefile +10 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/cqm_validators.gemspec +28 -0
  11. data/lib/base_validator.rb +22 -0
  12. data/lib/cqm_validators.rb +15 -0
  13. data/lib/cqm_validators/version.rb +3 -0
  14. data/lib/data_validator.rb +82 -0
  15. data/lib/measure_validator.rb +130 -0
  16. data/lib/performance_rate_validator.rb +92 -0
  17. data/lib/qrda_qdm_template_validator.rb +320 -0
  18. data/lib/reported_result_extractor.rb +172 -0
  19. data/lib/schema/infrastructure/cda/CDA_SDTC.xsd +44 -0
  20. data/lib/schema/infrastructure/cda/POCD_MT000040_SDTC.xsd +1500 -0
  21. data/lib/schema/infrastructure/cda/SDTC.xsd +210 -0
  22. data/lib/schema/processable/coreschemas/NarrativeBlock.xsd +557 -0
  23. data/lib/schema/processable/coreschemas/datatypes-base_SDTC.xsd +1850 -0
  24. data/lib/schema/processable/coreschemas/datatypes.xsd +1375 -0
  25. data/lib/schema/processable/coreschemas/infrastructureRoot.xsd +27 -0
  26. data/lib/schema/processable/coreschemas/voc.xsd +2124 -0
  27. data/lib/schema_validator.rb +23 -0
  28. data/lib/schematron/c_processor.rb +26 -0
  29. data/lib/schematron/iso-schematron-xslt1/ExtractSchFromRNG.xsl +75 -0
  30. data/lib/schematron/iso-schematron-xslt1/ExtractSchFromXSD.xsl +77 -0
  31. data/lib/schematron/iso-schematron-xslt1/iso_abstract_expand.xsl +297 -0
  32. data/lib/schematron/iso-schematron-xslt1/iso_dsdl_include.xsl +1509 -0
  33. data/lib/schematron/iso-schematron-xslt1/iso_schematron_message.xsl +55 -0
  34. data/lib/schematron/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl +1844 -0
  35. data/lib/schematron/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl +605 -0
  36. data/lib/schematron/iso-schematron-xslt1/readme.txt +101 -0
  37. data/lib/schematron/iso-schematron-xslt1/schematron-skeleton-api.htm +723 -0
  38. data/lib/schematron/iso-schematron-xslt2/ExtractSchFromRNG-2.xsl +75 -0
  39. data/lib/schematron/iso-schematron-xslt2/ExtractSchFromXSD-2.xsl +77 -0
  40. data/lib/schematron/iso-schematron-xslt2/iso_abstract_expand.xsl +297 -0
  41. data/lib/schematron/iso-schematron-xslt2/iso_dsdl_include.xsl +1508 -0
  42. data/lib/schematron/iso-schematron-xslt2/iso_schematron_message_xslt2.xsl +55 -0
  43. data/lib/schematron/iso-schematron-xslt2/iso_schematron_skeleton_for_saxon.xsl +2299 -0
  44. data/lib/schematron/iso-schematron-xslt2/iso_svrl_for_xslt2.xsl +684 -0
  45. data/lib/schematron/iso-schematron-xslt2/readme.txt +100 -0
  46. data/lib/schematron/iso-schematron-xslt2/sch-messages-cs.xhtml +56 -0
  47. data/lib/schematron/iso-schematron-xslt2/sch-messages-de.xhtml +57 -0
  48. data/lib/schematron/iso-schematron-xslt2/sch-messages-en.xhtml +57 -0
  49. data/lib/schematron/iso-schematron-xslt2/sch-messages-fr.xhtml +54 -0
  50. data/lib/schematron/iso-schematron-xslt2/sch-messages-nl.xhtml +58 -0
  51. data/lib/schematron/iso-schematron-xslt2/schematron-skeleton-api.htm +723 -0
  52. data/lib/schematron/java_processor.rb +92 -0
  53. data/lib/schematron/qrda/cat_1/HL7_CDAR2_QRDA_Category_I_2_12_16.sch +4693 -0
  54. data/lib/schematron/qrda/cat_1/voc.xml +1177 -0
  55. data/lib/schematron/qrda/cat_1_r2/QRDA Category I Release 2.sch +4069 -0
  56. data/lib/schematron/qrda/cat_1_r2/voc.xml +1065 -0
  57. data/lib/schematron/qrda/cat_1_r3_1/HL7 QRDA Category I STU 3.1.sch +3573 -0
  58. data/lib/schematron/qrda/cat_1_r3_1/HL7 QRDA Category III STU 1.1.sch +464 -0
  59. data/lib/schematron/qrda/cat_1_r3_1/QRDA Category I STU Release 3.1.sch +5394 -0
  60. data/lib/schematron/qrda/cat_1_r3_1/voc.xml +1229 -0
  61. data/lib/schematron/qrda/cat_1_r4/HL7 QRDA Category I STU 4.sch +3526 -0
  62. data/lib/schematron/qrda/cat_1_r4/voc.xml +1186 -0
  63. data/lib/schematron/qrda/cat_1_r5/HL7 QRDA Category I STU 5.sch +3069 -0
  64. data/lib/schematron/qrda/cat_1_r5/voc.xml +1186 -0
  65. data/lib/schematron/qrda/cat_3/QRDA Category III.sch +675 -0
  66. data/lib/schematron/qrda/cat_3/voc.xml +21 -0
  67. data/lib/schematron/qrda/cat_3_r1_1/HL7 QRDA Category III STU 1.1.sch +528 -0
  68. data/lib/schematron/qrda/cat_3_r1_1/voc.xml +8 -0
  69. data/lib/schematron/qrda/cat_3_r2/HL7 QRDA Category III STU 2.sch +677 -0
  70. data/lib/schematron/qrda/cat_3_r2/voc.xml +1186 -0
  71. data/lib/schematron/qrda/cat_3_r2_1/HL7 QRDA Category III STU 2.1.sch +678 -0
  72. data/lib/schematron/qrda/cat_3_r2_1/voc.xml +1186 -0
  73. data/lib/schematron_validator.rb +38 -0
  74. data/lib/validation_error.rb +10 -0
  75. data/lib/validators.rb +136 -0
  76. metadata +177 -0
@@ -0,0 +1,1375 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
3
+ <xs:annotation>
4
+ <xs:documentation>XML schema for message type POCD_MT000040.</xs:documentation>
5
+ <xs:documentation>
6
+ Copyright (c) 2015 Health Level Seven.
7
+ All rights reserved.
8
+
9
+ Redistribution and use in source and binary forms, with or
10
+ without modification, are permitted provided that the following
11
+ conditions are met:
12
+ 1. Redistributions of source code must retain the above
13
+ copyright notice, this list of conditions and the following
14
+ disclaimer.
15
+ 2. Redistributions in binary form must reproduce the above
16
+ copyright notice, this list of conditions and the following
17
+ disclaimer in the documentation and/or other materials
18
+ provided with the distribution.
19
+ 3. All advertising materials mentioning features or use of this
20
+ software must display the following acknowledgement:
21
+
22
+ This product includes software developed by Health Level Seven.
23
+
24
+ THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS
25
+ ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
26
+ NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
27
+ FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
28
+ SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
29
+ INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
31
+ GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
33
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
36
+ DAMAGE.
37
+ </xs:documentation>
38
+ <xs:documentation>Manually edited to include the datatypes-base_SCTC.xsd file which contains SDTC extensions</xs:documentation>
39
+ </xs:annotation>
40
+ <xs:include schemaLocation="datatypes-base_SDTC.xsd"/>
41
+ <!--
42
+ Instantiated templates
43
+ -->
44
+ <xs:complexType name="PIVL_TS">
45
+ <xs:annotation>
46
+ <xs:documentation>
47
+ Note: because this type is defined as an extension of SXCM_T,
48
+ all of the attributes and elements accepted for T are also
49
+ accepted by this definition. However, they are NOT allowed
50
+ by the normative description of this type. Unfortunately,
51
+ we cannot write a general purpose schematron contraints to
52
+ provide that extra validation, thus applications must be
53
+ aware that instance (fragments) that pass validation with
54
+ this might might still not be legal.
55
+ </xs:documentation>
56
+ </xs:annotation>
57
+ <xs:complexContent>
58
+ <xs:extension base="SXCM_TS">
59
+ <xs:sequence>
60
+ <xs:element name="phase" minOccurs="0" maxOccurs="1" type="IVL_TS">
61
+ <xs:annotation>
62
+ <xs:documentation>
63
+ A prototype of the repeating interval specifying the
64
+ duration of each occurrence and anchors the periodic
65
+ interval sequence at a certain point in time.
66
+ </xs:documentation>
67
+ </xs:annotation>
68
+ </xs:element>
69
+ <xs:element name="period" minOccurs="0" maxOccurs="1" type="PQ">
70
+ <xs:annotation>
71
+ <xs:documentation>
72
+ A time duration specifying a reciprocal measure of
73
+ the frequency at which the periodic interval repeats.
74
+ </xs:documentation>
75
+ </xs:annotation>
76
+ </xs:element>
77
+ </xs:sequence>
78
+ <xs:attribute name="alignment" type="CalendarCycle" use="optional">
79
+ <xs:annotation>
80
+ <xs:documentation>
81
+ Specifies if and how the repetitions are aligned to
82
+ the cycles of the underlying calendar (e.g., to
83
+ distinguish every 30 days from "the 5th of every
84
+ month".) A non-aligned periodic interval recurs
85
+ independently from the calendar. An aligned periodic
86
+ interval is synchronized with the calendar.
87
+ </xs:documentation>
88
+ </xs:annotation>
89
+ </xs:attribute>
90
+ <xs:attribute name="institutionSpecified" type="bl" use="optional" default="false">
91
+ <xs:annotation>
92
+ <xs:documentation>
93
+ Indicates whether the exact timing is up to the party
94
+ executing the schedule (e.g., to distinguish "every 8
95
+ hours" from "3 times a day".)
96
+ </xs:documentation>
97
+ </xs:annotation>
98
+ </xs:attribute>
99
+ </xs:extension>
100
+ </xs:complexContent>
101
+ </xs:complexType>
102
+ <xs:complexType name="EIVL_TS">
103
+ <xs:annotation>
104
+ <xs:documentation>
105
+ Note: because this type is defined as an extension of SXCM_T,
106
+ all of the attributes and elements accepted for T are also
107
+ accepted by this definition. However, they are NOT allowed
108
+ by the normative description of this type. Unfortunately,
109
+ we cannot write a general purpose schematron contraints to
110
+ provide that extra validation, thus applications must be
111
+ aware that instance (fragments) that pass validation with
112
+ this might might still not be legal.
113
+ </xs:documentation>
114
+ </xs:annotation>
115
+ <xs:complexContent>
116
+ <xs:extension base="SXCM_TS">
117
+ <xs:sequence>
118
+ <xs:element name="event" type="EIVL.event" minOccurs="0" maxOccurs="1">
119
+ <xs:annotation>
120
+ <xs:documentation>
121
+ A code for a common (periodical) activity of daily
122
+ living based on which the event related periodic
123
+ interval is specified.
124
+ </xs:documentation>
125
+ </xs:annotation>
126
+ </xs:element>
127
+ <xs:element name="offset" minOccurs="0" maxOccurs="1" type="IVL_PQ">
128
+ <xs:annotation>
129
+ <xs:documentation>
130
+ An interval of elapsed time (duration, not absolute
131
+ point in time) that marks the offsets for the
132
+ beginning, width and end of the event-related periodic
133
+ interval measured from the time each such event
134
+ actually occurred.
135
+ </xs:documentation>
136
+ </xs:annotation>
137
+ </xs:element>
138
+ </xs:sequence>
139
+ </xs:extension>
140
+ </xs:complexContent>
141
+ </xs:complexType>
142
+ <xs:complexType name="IVL_PQ">
143
+ <xs:complexContent>
144
+ <xs:extension base="SXCM_PQ">
145
+ <xs:choice minOccurs="0">
146
+ <xs:sequence>
147
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_PQ">
148
+ <xs:annotation>
149
+ <xs:documentation>
150
+ The low limit of the interval.
151
+ </xs:documentation>
152
+ </xs:annotation>
153
+ </xs:element>
154
+ <xs:choice minOccurs="0">
155
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PQ">
156
+ <xs:annotation>
157
+ <xs:documentation>
158
+ The difference between high and low boundary. The
159
+ purpose of distinguishing a width property is to
160
+ handle all cases of incomplete information
161
+ symmetrically. In any interval representation only
162
+ two of the three properties high, low, and width need
163
+ to be stated and the third can be derived.
164
+ </xs:documentation>
165
+ </xs:annotation>
166
+ </xs:element>
167
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PQ">
168
+ <xs:annotation>
169
+ <xs:documentation>
170
+ The high limit of the interval.
171
+ </xs:documentation>
172
+ </xs:annotation>
173
+ </xs:element>
174
+ </xs:choice>
175
+ </xs:sequence>
176
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_PQ">
177
+ <xs:annotation>
178
+ <xs:documentation/>
179
+ </xs:annotation>
180
+ </xs:element>
181
+ <xs:sequence>
182
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="PQ">
183
+ <xs:annotation>
184
+ <xs:documentation>
185
+ The difference between high and low boundary. The
186
+ purpose of distinguishing a width property is to
187
+ handle all cases of incomplete information
188
+ symmetrically. In any interval representation only
189
+ two of the three properties high, low, and width need
190
+ to be stated and the third can be derived.
191
+ </xs:documentation>
192
+ </xs:annotation>
193
+ </xs:element>
194
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PQ">
195
+ <xs:annotation>
196
+ <xs:documentation>
197
+ The high limit of the interval.
198
+ </xs:documentation>
199
+ </xs:annotation>
200
+ </xs:element>
201
+ </xs:sequence>
202
+ <xs:sequence>
203
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="PQ">
204
+ <xs:annotation>
205
+ <xs:documentation>
206
+ The arithmetic mean of the interval (low plus high
207
+ divided by 2). The purpose of distinguishing the center
208
+ as a semantic property is for conversions of intervals
209
+ from and to point values.
210
+ </xs:documentation>
211
+ </xs:annotation>
212
+ </xs:element>
213
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PQ">
214
+ <xs:annotation>
215
+ <xs:documentation>
216
+ The difference between high and low boundary. The
217
+ purpose of distinguishing a width property is to
218
+ handle all cases of incomplete information
219
+ symmetrically. In any interval representation only
220
+ two of the three properties high, low, and width need
221
+ to be stated and the third can be derived.
222
+ </xs:documentation>
223
+ </xs:annotation>
224
+ </xs:element>
225
+ </xs:sequence>
226
+ </xs:choice>
227
+ </xs:extension>
228
+ </xs:complexContent>
229
+ </xs:complexType>
230
+ <xs:complexType name="SXCM_PQ">
231
+ <xs:complexContent>
232
+ <xs:extension base="PQ">
233
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
234
+ <xs:annotation>
235
+ <xs:documentation>
236
+ A code specifying whether the set component is included
237
+ (union) or excluded (set-difference) from the set, or
238
+ other set operations with the current set component and
239
+ the set as constructed from the representation stream
240
+ up to the current point.
241
+ </xs:documentation>
242
+ </xs:annotation>
243
+ </xs:attribute>
244
+ </xs:extension>
245
+ </xs:complexContent>
246
+ </xs:complexType>
247
+ <xs:complexType name="IVXB_PQ">
248
+ <xs:complexContent>
249
+ <xs:extension base="PQ">
250
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
251
+ <xs:annotation>
252
+ <xs:documentation>
253
+ Specifies whether the limit is included in the
254
+ interval (interval is closed) or excluded from the
255
+ interval (interval is open).
256
+ </xs:documentation>
257
+ </xs:annotation>
258
+ </xs:attribute>
259
+ </xs:extension>
260
+ </xs:complexContent>
261
+ </xs:complexType>
262
+ <xs:complexType name="PPD_TS">
263
+ <xs:annotation>
264
+ <xs:appinfo>
265
+ <diff>PPD_PQ</diff>
266
+ </xs:appinfo>
267
+ </xs:annotation>
268
+ <xs:complexContent>
269
+ <xs:extension base="TS">
270
+ <xs:sequence>
271
+ <xs:element name="standardDeviation" minOccurs="0" maxOccurs="1" type="PQ">
272
+ <xs:annotation>
273
+ <xs:documentation>
274
+ The primary measure of variance/uncertainty of the
275
+ value (the square root of the sum of the squares of
276
+ the differences between all data points and the mean).
277
+ The standard deviation is used to normalize the data
278
+ for computing the distribution function. Applications
279
+ that cannot deal with probability distributions can
280
+ still get an idea about the confidence level by looking
281
+ at the standard deviation.
282
+ </xs:documentation>
283
+ </xs:annotation>
284
+ </xs:element>
285
+ </xs:sequence>
286
+ <xs:attribute name="distributionType" type="ProbabilityDistributionType" use="optional">
287
+ <xs:annotation>
288
+ <xs:documentation>
289
+ A code specifying the type of probability distribution.
290
+ Possible values are as shown in the attached table.
291
+ The NULL value (unknown) for the type code indicates
292
+ that the probability distribution type is unknown. In
293
+ that case, the standard deviation has the meaning of an
294
+ informal guess.
295
+ </xs:documentation>
296
+ </xs:annotation>
297
+ </xs:attribute>
298
+ </xs:extension>
299
+ </xs:complexContent>
300
+ </xs:complexType>
301
+ <xs:complexType name="PPD_PQ">
302
+ <xs:annotation>
303
+ <xs:appinfo>
304
+ <diff>PPD_PQ</diff>
305
+ </xs:appinfo>
306
+ </xs:annotation>
307
+ <xs:complexContent>
308
+ <xs:extension base="PQ">
309
+ <xs:sequence>
310
+ <xs:element name="standardDeviation" minOccurs="0" maxOccurs="1" type="PQ">
311
+ <xs:annotation>
312
+ <xs:documentation>
313
+ The primary measure of variance/uncertainty of the
314
+ value (the square root of the sum of the squares of
315
+ the differences between all data points and the mean).
316
+ The standard deviation is used to normalize the data
317
+ for computing the distribution function. Applications
318
+ that cannot deal with probability distributions can
319
+ still get an idea about the confidence level by looking
320
+ at the standard deviation.
321
+ </xs:documentation>
322
+ </xs:annotation>
323
+ </xs:element>
324
+ </xs:sequence>
325
+ <xs:attribute name="distributionType" type="ProbabilityDistributionType" use="optional">
326
+ <xs:annotation>
327
+ <xs:documentation>
328
+ A code specifying the type of probability distribution.
329
+ Possible values are as shown in the attached table.
330
+ The NULL value (unknown) for the type code indicates
331
+ that the probability distribution type is unknown. In
332
+ that case, the standard deviation has the meaning of an
333
+ informal guess.
334
+ </xs:documentation>
335
+ </xs:annotation>
336
+ </xs:attribute>
337
+ </xs:extension>
338
+ </xs:complexContent>
339
+ </xs:complexType>
340
+ <xs:complexType name="PIVL_PPD_TS">
341
+ <xs:annotation>
342
+ <xs:documentation>
343
+ Note: because this type is defined as an extension of SXCM_T,
344
+ all of the attributes and elements accepted for T are also
345
+ accepted by this definition. However, they are NOT allowed
346
+ by the normative description of this type. Unfortunately,
347
+ we cannot write a general purpose schematron contraints to
348
+ provide that extra validation, thus applications must be
349
+ aware that instance (fragments) that pass validation with
350
+ this might might still not be legal.
351
+ </xs:documentation>
352
+ </xs:annotation>
353
+ <xs:complexContent>
354
+ <xs:extension base="SXCM_PPD_TS">
355
+ <xs:sequence>
356
+ <xs:element name="phase" minOccurs="0" maxOccurs="1" type="IVL_PPD_TS">
357
+ <xs:annotation>
358
+ <xs:documentation>
359
+ A prototype of the repeating interval specifying the
360
+ duration of each occurrence and anchors the periodic
361
+ interval sequence at a certain point in time.
362
+ </xs:documentation>
363
+ </xs:annotation>
364
+ </xs:element>
365
+ <xs:element name="period" minOccurs="0" maxOccurs="1" type="PPD_PQ">
366
+ <xs:annotation>
367
+ <xs:documentation>
368
+ A time duration specifying a reciprocal measure of
369
+ the frequency at which the periodic interval repeats.
370
+ </xs:documentation>
371
+ </xs:annotation>
372
+ </xs:element>
373
+ </xs:sequence>
374
+ <xs:attribute name="alignment" type="CalendarCycle" use="optional">
375
+ <xs:annotation>
376
+ <xs:documentation>
377
+ Specifies if and how the repetitions are aligned to
378
+ the cycles of the underlying calendar (e.g., to
379
+ distinguish every 30 days from "the 5th of every
380
+ month".) A non-aligned periodic interval recurs
381
+ independently from the calendar. An aligned periodic
382
+ interval is synchronized with the calendar.
383
+ </xs:documentation>
384
+ </xs:annotation>
385
+ </xs:attribute>
386
+ <xs:attribute name="institutionSpecified" type="bl" use="optional" default="false">
387
+ <xs:annotation>
388
+ <xs:documentation>
389
+ Indicates whether the exact timing is up to the party
390
+ executing the schedule (e.g., to distinguish "every 8
391
+ hours" from "3 times a day".)
392
+ </xs:documentation>
393
+ </xs:annotation>
394
+ </xs:attribute>
395
+ </xs:extension>
396
+ </xs:complexContent>
397
+ </xs:complexType>
398
+ <xs:complexType name="SXCM_PPD_TS">
399
+ <xs:complexContent>
400
+ <xs:extension base="PPD_TS">
401
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
402
+ <xs:annotation>
403
+ <xs:documentation>
404
+ A code specifying whether the set component is included
405
+ (union) or excluded (set-difference) from the set, or
406
+ other set operations with the current set component and
407
+ the set as constructed from the representation stream
408
+ up to the current point.
409
+ </xs:documentation>
410
+ </xs:annotation>
411
+ </xs:attribute>
412
+ </xs:extension>
413
+ </xs:complexContent>
414
+ </xs:complexType>
415
+ <xs:complexType name="IVL_PPD_TS">
416
+ <xs:complexContent>
417
+ <xs:extension base="SXCM_PPD_TS">
418
+ <xs:choice minOccurs="0">
419
+ <xs:sequence>
420
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_PPD_TS">
421
+ <xs:annotation>
422
+ <xs:documentation>
423
+ The low limit of the interval.
424
+ </xs:documentation>
425
+ </xs:annotation>
426
+ </xs:element>
427
+ <xs:choice minOccurs="0">
428
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PPD_PQ">
429
+ <xs:annotation>
430
+ <xs:documentation>
431
+ The difference between high and low boundary. The
432
+ purpose of distinguishing a width property is to
433
+ handle all cases of incomplete information
434
+ symmetrically. In any interval representation only
435
+ two of the three properties high, low, and width need
436
+ to be stated and the third can be derived.
437
+ </xs:documentation>
438
+ </xs:annotation>
439
+ </xs:element>
440
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PPD_TS">
441
+ <xs:annotation>
442
+ <xs:documentation>
443
+ The high limit of the interval.
444
+ </xs:documentation>
445
+ </xs:annotation>
446
+ </xs:element>
447
+ </xs:choice>
448
+ </xs:sequence>
449
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_PPD_TS">
450
+ <xs:annotation>
451
+ <xs:documentation/>
452
+ </xs:annotation>
453
+ </xs:element>
454
+ <xs:sequence>
455
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="PPD_PQ">
456
+ <xs:annotation>
457
+ <xs:documentation>
458
+ The difference between high and low boundary. The
459
+ purpose of distinguishing a width property is to
460
+ handle all cases of incomplete information
461
+ symmetrically. In any interval representation only
462
+ two of the three properties high, low, and width need
463
+ to be stated and the third can be derived.
464
+ </xs:documentation>
465
+ </xs:annotation>
466
+ </xs:element>
467
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PPD_TS">
468
+ <xs:annotation>
469
+ <xs:documentation>
470
+ The high limit of the interval.
471
+ </xs:documentation>
472
+ </xs:annotation>
473
+ </xs:element>
474
+ </xs:sequence>
475
+ <xs:sequence>
476
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="PPD_TS">
477
+ <xs:annotation>
478
+ <xs:documentation>
479
+ The arithmetic mean of the interval (low plus high
480
+ divided by 2). The purpose of distinguishing the center
481
+ as a semantic property is for conversions of intervals
482
+ from and to point values.
483
+ </xs:documentation>
484
+ </xs:annotation>
485
+ </xs:element>
486
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PPD_PQ">
487
+ <xs:annotation>
488
+ <xs:documentation>
489
+ The difference between high and low boundary. The
490
+ purpose of distinguishing a width property is to
491
+ handle all cases of incomplete information
492
+ symmetrically. In any interval representation only
493
+ two of the three properties high, low, and width need
494
+ to be stated and the third can be derived.
495
+ </xs:documentation>
496
+ </xs:annotation>
497
+ </xs:element>
498
+ </xs:sequence>
499
+ </xs:choice>
500
+ </xs:extension>
501
+ </xs:complexContent>
502
+ </xs:complexType>
503
+ <xs:complexType name="IVXB_PPD_TS">
504
+ <xs:complexContent>
505
+ <xs:extension base="PPD_TS">
506
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
507
+ <xs:annotation>
508
+ <xs:documentation>
509
+ Specifies whether the limit is included in the
510
+ interval (interval is closed) or excluded from the
511
+ interval (interval is open).
512
+ </xs:documentation>
513
+ </xs:annotation>
514
+ </xs:attribute>
515
+ </xs:extension>
516
+ </xs:complexContent>
517
+ </xs:complexType>
518
+ <xs:complexType name="EIVL_PPD_TS">
519
+ <xs:annotation>
520
+ <xs:documentation>
521
+ Note: because this type is defined as an extension of SXCM_T,
522
+ all of the attributes and elements accepted for T are also
523
+ accepted by this definition. However, they are NOT allowed
524
+ by the normative description of this type. Unfortunately,
525
+ we cannot write a general purpose schematron contraints to
526
+ provide that extra validation, thus applications must be
527
+ aware that instance (fragments) that pass validation with
528
+ this might might still not be legal.
529
+ </xs:documentation>
530
+ </xs:annotation>
531
+ <xs:complexContent>
532
+ <xs:extension base="SXCM_PPD_TS">
533
+ <xs:sequence>
534
+ <xs:element name="event" type="EIVL.event" minOccurs="0" maxOccurs="1">
535
+ <xs:annotation>
536
+ <xs:documentation>
537
+ A code for a common (periodical) activity of daily
538
+ living based on which the event related periodic
539
+ interval is specified.
540
+ </xs:documentation>
541
+ </xs:annotation>
542
+ </xs:element>
543
+ <xs:element name="offset" minOccurs="0" maxOccurs="1" type="IVL_PPD_PQ">
544
+ <xs:annotation>
545
+ <xs:documentation>
546
+ An interval of elapsed time (duration, not absolute
547
+ point in time) that marks the offsets for the
548
+ beginning, width and end of the event-related periodic
549
+ interval measured from the time each such event
550
+ actually occurred.
551
+ </xs:documentation>
552
+ </xs:annotation>
553
+ </xs:element>
554
+ </xs:sequence>
555
+ </xs:extension>
556
+ </xs:complexContent>
557
+ </xs:complexType>
558
+ <xs:complexType name="IVL_PPD_PQ">
559
+ <xs:complexContent>
560
+ <xs:extension base="SXCM_PPD_PQ">
561
+ <xs:choice minOccurs="0">
562
+ <xs:sequence>
563
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_PPD_PQ">
564
+ <xs:annotation>
565
+ <xs:documentation>
566
+ The low limit of the interval.
567
+ </xs:documentation>
568
+ </xs:annotation>
569
+ </xs:element>
570
+ <xs:choice minOccurs="0">
571
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PPD_PQ">
572
+ <xs:annotation>
573
+ <xs:documentation>
574
+ The difference between high and low boundary. The
575
+ purpose of distinguishing a width property is to
576
+ handle all cases of incomplete information
577
+ symmetrically. In any interval representation only
578
+ two of the three properties high, low, and width need
579
+ to be stated and the third can be derived.
580
+ </xs:documentation>
581
+ </xs:annotation>
582
+ </xs:element>
583
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PPD_PQ">
584
+ <xs:annotation>
585
+ <xs:documentation>
586
+ The high limit of the interval.
587
+ </xs:documentation>
588
+ </xs:annotation>
589
+ </xs:element>
590
+ </xs:choice>
591
+ </xs:sequence>
592
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_PPD_PQ">
593
+ <xs:annotation>
594
+ <xs:documentation/>
595
+ </xs:annotation>
596
+ </xs:element>
597
+ <xs:sequence>
598
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="PPD_PQ">
599
+ <xs:annotation>
600
+ <xs:documentation>
601
+ The difference between high and low boundary. The
602
+ purpose of distinguishing a width property is to
603
+ handle all cases of incomplete information
604
+ symmetrically. In any interval representation only
605
+ two of the three properties high, low, and width need
606
+ to be stated and the third can be derived.
607
+ </xs:documentation>
608
+ </xs:annotation>
609
+ </xs:element>
610
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_PPD_PQ">
611
+ <xs:annotation>
612
+ <xs:documentation>
613
+ The high limit of the interval.
614
+ </xs:documentation>
615
+ </xs:annotation>
616
+ </xs:element>
617
+ </xs:sequence>
618
+ <xs:sequence>
619
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="PPD_PQ">
620
+ <xs:annotation>
621
+ <xs:documentation>
622
+ The arithmetic mean of the interval (low plus high
623
+ divided by 2). The purpose of distinguishing the center
624
+ as a semantic property is for conversions of intervals
625
+ from and to point values.
626
+ </xs:documentation>
627
+ </xs:annotation>
628
+ </xs:element>
629
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="PPD_PQ">
630
+ <xs:annotation>
631
+ <xs:documentation>
632
+ The difference between high and low boundary. The
633
+ purpose of distinguishing a width property is to
634
+ handle all cases of incomplete information
635
+ symmetrically. In any interval representation only
636
+ two of the three properties high, low, and width need
637
+ to be stated and the third can be derived.
638
+ </xs:documentation>
639
+ </xs:annotation>
640
+ </xs:element>
641
+ </xs:sequence>
642
+ </xs:choice>
643
+ </xs:extension>
644
+ </xs:complexContent>
645
+ </xs:complexType>
646
+ <xs:complexType name="SXCM_PPD_PQ">
647
+ <xs:complexContent>
648
+ <xs:extension base="PPD_PQ">
649
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
650
+ <xs:annotation>
651
+ <xs:documentation>
652
+ A code specifying whether the set component is included
653
+ (union) or excluded (set-difference) from the set, or
654
+ other set operations with the current set component and
655
+ the set as constructed from the representation stream
656
+ up to the current point.
657
+ </xs:documentation>
658
+ </xs:annotation>
659
+ </xs:attribute>
660
+ </xs:extension>
661
+ </xs:complexContent>
662
+ </xs:complexType>
663
+ <xs:complexType name="IVXB_PPD_PQ">
664
+ <xs:complexContent>
665
+ <xs:extension base="PPD_PQ">
666
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
667
+ <xs:annotation>
668
+ <xs:documentation>
669
+ Specifies whether the limit is included in the
670
+ interval (interval is closed) or excluded from the
671
+ interval (interval is open).
672
+ </xs:documentation>
673
+ </xs:annotation>
674
+ </xs:attribute>
675
+ </xs:extension>
676
+ </xs:complexContent>
677
+ </xs:complexType>
678
+ <xs:complexType name="SXPR_TS">
679
+ <xs:complexContent>
680
+ <xs:extension base="SXCM_TS">
681
+ <xs:sequence>
682
+ <xs:element name="comp" minOccurs="2" maxOccurs="unbounded" type="SXCM_TS">
683
+ <xs:annotation>
684
+ <xs:documentation/>
685
+ </xs:annotation>
686
+ </xs:element>
687
+ </xs:sequence>
688
+ </xs:extension>
689
+ </xs:complexContent>
690
+ </xs:complexType>
691
+ <xs:complexType name="SXCM_CD">
692
+ <xs:complexContent>
693
+ <xs:extension base="CD">
694
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
695
+ <xs:annotation>
696
+ <xs:documentation>
697
+ A code specifying whether the set component is included
698
+ (union) or excluded (set-difference) from the set, or
699
+ other set operations with the current set component and
700
+ the set as constructed from the representation stream
701
+ up to the current point.
702
+ </xs:documentation>
703
+ </xs:annotation>
704
+ </xs:attribute>
705
+ </xs:extension>
706
+ </xs:complexContent>
707
+ </xs:complexType>
708
+ <xs:complexType name="SXCM_MO">
709
+ <xs:complexContent>
710
+ <xs:extension base="MO">
711
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
712
+ <xs:annotation>
713
+ <xs:documentation>
714
+ A code specifying whether the set component is included
715
+ (union) or excluded (set-difference) from the set, or
716
+ other set operations with the current set component and
717
+ the set as constructed from the representation stream
718
+ up to the current point.
719
+ </xs:documentation>
720
+ </xs:annotation>
721
+ </xs:attribute>
722
+ </xs:extension>
723
+ </xs:complexContent>
724
+ </xs:complexType>
725
+ <xs:complexType name="SXCM_INT">
726
+ <xs:complexContent>
727
+ <xs:extension base="INT">
728
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
729
+ <xs:annotation>
730
+ <xs:documentation>
731
+ A code specifying whether the set component is included
732
+ (union) or excluded (set-difference) from the set, or
733
+ other set operations with the current set component and
734
+ the set as constructed from the representation stream
735
+ up to the current point.
736
+ </xs:documentation>
737
+ </xs:annotation>
738
+ </xs:attribute>
739
+ </xs:extension>
740
+ </xs:complexContent>
741
+ </xs:complexType>
742
+ <xs:complexType name="SXCM_REAL">
743
+ <xs:complexContent>
744
+ <xs:extension base="REAL">
745
+ <xs:attribute name="operator" type="SetOperator" use="optional" default="I">
746
+ <xs:annotation>
747
+ <xs:documentation>
748
+ A code specifying whether the set component is included
749
+ (union) or excluded (set-difference) from the set, or
750
+ other set operations with the current set component and
751
+ the set as constructed from the representation stream
752
+ up to the current point.
753
+ </xs:documentation>
754
+ </xs:annotation>
755
+ </xs:attribute>
756
+ </xs:extension>
757
+ </xs:complexContent>
758
+ </xs:complexType>
759
+ <xs:complexType name="IVL_INT">
760
+ <xs:complexContent>
761
+ <xs:extension base="SXCM_INT">
762
+ <xs:choice minOccurs="0">
763
+ <xs:sequence>
764
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_INT">
765
+ <xs:annotation>
766
+ <xs:documentation>
767
+ The low limit of the interval.
768
+ </xs:documentation>
769
+ </xs:annotation>
770
+ </xs:element>
771
+ <xs:choice minOccurs="0">
772
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="INT">
773
+ <xs:annotation>
774
+ <xs:documentation>
775
+ The difference between high and low boundary. The
776
+ purpose of distinguishing a width property is to
777
+ handle all cases of incomplete information
778
+ symmetrically. In any interval representation only
779
+ two of the three properties high, low, and width need
780
+ to be stated and the third can be derived.
781
+ </xs:documentation>
782
+ </xs:annotation>
783
+ </xs:element>
784
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_INT">
785
+ <xs:annotation>
786
+ <xs:documentation>
787
+ The high limit of the interval.
788
+ </xs:documentation>
789
+ </xs:annotation>
790
+ </xs:element>
791
+ </xs:choice>
792
+ </xs:sequence>
793
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_INT">
794
+ <xs:annotation>
795
+ <xs:documentation/>
796
+ </xs:annotation>
797
+ </xs:element>
798
+ <xs:sequence>
799
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="INT">
800
+ <xs:annotation>
801
+ <xs:documentation>
802
+ The difference between high and low boundary. The
803
+ purpose of distinguishing a width property is to
804
+ handle all cases of incomplete information
805
+ symmetrically. In any interval representation only
806
+ two of the three properties high, low, and width need
807
+ to be stated and the third can be derived.
808
+ </xs:documentation>
809
+ </xs:annotation>
810
+ </xs:element>
811
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_INT">
812
+ <xs:annotation>
813
+ <xs:documentation>
814
+ The high limit of the interval.
815
+ </xs:documentation>
816
+ </xs:annotation>
817
+ </xs:element>
818
+ </xs:sequence>
819
+ <xs:sequence>
820
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="INT">
821
+ <xs:annotation>
822
+ <xs:documentation>
823
+ The arithmetic mean of the interval (low plus high
824
+ divided by 2). The purpose of distinguishing the center
825
+ as a semantic property is for conversions of intervals
826
+ from and to point values.
827
+ </xs:documentation>
828
+ </xs:annotation>
829
+ </xs:element>
830
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="INT">
831
+ <xs:annotation>
832
+ <xs:documentation>
833
+ The difference between high and low boundary. The
834
+ purpose of distinguishing a width property is to
835
+ handle all cases of incomplete information
836
+ symmetrically. In any interval representation only
837
+ two of the three properties high, low, and width need
838
+ to be stated and the third can be derived.
839
+ </xs:documentation>
840
+ </xs:annotation>
841
+ </xs:element>
842
+ </xs:sequence>
843
+ </xs:choice>
844
+ </xs:extension>
845
+ </xs:complexContent>
846
+ </xs:complexType>
847
+ <xs:complexType name="IVXB_INT">
848
+ <xs:complexContent>
849
+ <xs:extension base="INT">
850
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
851
+ <xs:annotation>
852
+ <xs:documentation>
853
+ Specifies whether the limit is included in the
854
+ interval (interval is closed) or excluded from the
855
+ interval (interval is open).
856
+ </xs:documentation>
857
+ </xs:annotation>
858
+ </xs:attribute>
859
+ </xs:extension>
860
+ </xs:complexContent>
861
+ </xs:complexType>
862
+ <xs:complexType name="IVL_REAL">
863
+ <xs:complexContent>
864
+ <xs:extension base="SXCM_REAL">
865
+ <xs:choice minOccurs="0">
866
+ <xs:sequence>
867
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_REAL">
868
+ <xs:annotation>
869
+ <xs:documentation>
870
+ The low limit of the interval.
871
+ </xs:documentation>
872
+ </xs:annotation>
873
+ </xs:element>
874
+ <xs:choice minOccurs="0">
875
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="REAL">
876
+ <xs:annotation>
877
+ <xs:documentation>
878
+ The difference between high and low boundary. The
879
+ purpose of distinguishing a width property is to
880
+ handle all cases of incomplete information
881
+ symmetrically. In any interval representation only
882
+ two of the three properties high, low, and width need
883
+ to be stated and the third can be derived.
884
+ </xs:documentation>
885
+ </xs:annotation>
886
+ </xs:element>
887
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_REAL">
888
+ <xs:annotation>
889
+ <xs:documentation>
890
+ The high limit of the interval.
891
+ </xs:documentation>
892
+ </xs:annotation>
893
+ </xs:element>
894
+ </xs:choice>
895
+ </xs:sequence>
896
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_REAL">
897
+ <xs:annotation>
898
+ <xs:documentation/>
899
+ </xs:annotation>
900
+ </xs:element>
901
+ <xs:sequence>
902
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="REAL">
903
+ <xs:annotation>
904
+ <xs:documentation>
905
+ The difference between high and low boundary. The
906
+ purpose of distinguishing a width property is to
907
+ handle all cases of incomplete information
908
+ symmetrically. In any interval representation only
909
+ two of the three properties high, low, and width need
910
+ to be stated and the third can be derived.
911
+ </xs:documentation>
912
+ </xs:annotation>
913
+ </xs:element>
914
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_REAL">
915
+ <xs:annotation>
916
+ <xs:documentation>
917
+ The high limit of the interval.
918
+ </xs:documentation>
919
+ </xs:annotation>
920
+ </xs:element>
921
+ </xs:sequence>
922
+ <xs:sequence>
923
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="REAL">
924
+ <xs:annotation>
925
+ <xs:documentation>
926
+ The arithmetic mean of the interval (low plus high
927
+ divided by 2). The purpose of distinguishing the center
928
+ as a semantic property is for conversions of intervals
929
+ from and to point values.
930
+ </xs:documentation>
931
+ </xs:annotation>
932
+ </xs:element>
933
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="REAL">
934
+ <xs:annotation>
935
+ <xs:documentation>
936
+ The difference between high and low boundary. The
937
+ purpose of distinguishing a width property is to
938
+ handle all cases of incomplete information
939
+ symmetrically. In any interval representation only
940
+ two of the three properties high, low, and width need
941
+ to be stated and the third can be derived.
942
+ </xs:documentation>
943
+ </xs:annotation>
944
+ </xs:element>
945
+ </xs:sequence>
946
+ </xs:choice>
947
+ </xs:extension>
948
+ </xs:complexContent>
949
+ </xs:complexType>
950
+ <xs:complexType name="IVXB_REAL">
951
+ <xs:complexContent>
952
+ <xs:extension base="REAL">
953
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
954
+ <xs:annotation>
955
+ <xs:documentation>
956
+ Specifies whether the limit is included in the
957
+ interval (interval is closed) or excluded from the
958
+ interval (interval is open).
959
+ </xs:documentation>
960
+ </xs:annotation>
961
+ </xs:attribute>
962
+ </xs:extension>
963
+ </xs:complexContent>
964
+ </xs:complexType>
965
+ <xs:complexType name="IVL_MO">
966
+ <xs:complexContent>
967
+ <xs:extension base="SXCM_MO">
968
+ <xs:choice minOccurs="0">
969
+ <xs:sequence>
970
+ <xs:element name="low" minOccurs="1" maxOccurs="1" type="IVXB_MO">
971
+ <xs:annotation>
972
+ <xs:documentation>
973
+ The low limit of the interval.
974
+ </xs:documentation>
975
+ </xs:annotation>
976
+ </xs:element>
977
+ <xs:choice minOccurs="0">
978
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="MO">
979
+ <xs:annotation>
980
+ <xs:documentation>
981
+ The difference between high and low boundary. The
982
+ purpose of distinguishing a width property is to
983
+ handle all cases of incomplete information
984
+ symmetrically. In any interval representation only
985
+ two of the three properties high, low, and width need
986
+ to be stated and the third can be derived.
987
+ </xs:documentation>
988
+ </xs:annotation>
989
+ </xs:element>
990
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_MO">
991
+ <xs:annotation>
992
+ <xs:documentation>
993
+ The high limit of the interval.
994
+ </xs:documentation>
995
+ </xs:annotation>
996
+ </xs:element>
997
+ </xs:choice>
998
+ </xs:sequence>
999
+ <xs:element name="high" minOccurs="1" maxOccurs="1" type="IVXB_MO">
1000
+ <xs:annotation>
1001
+ <xs:documentation/>
1002
+ </xs:annotation>
1003
+ </xs:element>
1004
+ <xs:sequence>
1005
+ <xs:element name="width" minOccurs="1" maxOccurs="1" type="MO">
1006
+ <xs:annotation>
1007
+ <xs:documentation>
1008
+ The difference between high and low boundary. The
1009
+ purpose of distinguishing a width property is to
1010
+ handle all cases of incomplete information
1011
+ symmetrically. In any interval representation only
1012
+ two of the three properties high, low, and width need
1013
+ to be stated and the third can be derived.
1014
+ </xs:documentation>
1015
+ </xs:annotation>
1016
+ </xs:element>
1017
+ <xs:element name="high" minOccurs="0" maxOccurs="1" type="IVXB_MO">
1018
+ <xs:annotation>
1019
+ <xs:documentation>
1020
+ The high limit of the interval.
1021
+ </xs:documentation>
1022
+ </xs:annotation>
1023
+ </xs:element>
1024
+ </xs:sequence>
1025
+ <xs:sequence>
1026
+ <xs:element name="center" minOccurs="1" maxOccurs="1" type="MO">
1027
+ <xs:annotation>
1028
+ <xs:documentation>
1029
+ The arithmetic mean of the interval (low plus high
1030
+ divided by 2). The purpose of distinguishing the center
1031
+ as a semantic property is for conversions of intervals
1032
+ from and to point values.
1033
+ </xs:documentation>
1034
+ </xs:annotation>
1035
+ </xs:element>
1036
+ <xs:element name="width" minOccurs="0" maxOccurs="1" type="MO">
1037
+ <xs:annotation>
1038
+ <xs:documentation>
1039
+ The difference between high and low boundary. The
1040
+ purpose of distinguishing a width property is to
1041
+ handle all cases of incomplete information
1042
+ symmetrically. In any interval representation only
1043
+ two of the three properties high, low, and width need
1044
+ to be stated and the third can be derived.
1045
+ </xs:documentation>
1046
+ </xs:annotation>
1047
+ </xs:element>
1048
+ </xs:sequence>
1049
+ </xs:choice>
1050
+ </xs:extension>
1051
+ </xs:complexContent>
1052
+ </xs:complexType>
1053
+ <xs:complexType name="IVXB_MO">
1054
+ <xs:complexContent>
1055
+ <xs:extension base="MO">
1056
+ <xs:attribute name="inclusive" type="bl" use="optional" default="true">
1057
+ <xs:annotation>
1058
+ <xs:documentation>
1059
+ Specifies whether the limit is included in the
1060
+ interval (interval is closed) or excluded from the
1061
+ interval (interval is open).
1062
+ </xs:documentation>
1063
+ </xs:annotation>
1064
+ </xs:attribute>
1065
+ </xs:extension>
1066
+ </xs:complexContent>
1067
+ </xs:complexType>
1068
+ <xs:complexType name="HXIT_PQ">
1069
+ <xs:complexContent>
1070
+ <xs:extension base="PQ">
1071
+ <xs:sequence>
1072
+ <xs:element name="validTime" minOccurs="0" maxOccurs="1" type="IVL_TS">
1073
+ <xs:annotation>
1074
+ <xs:documentation>
1075
+ The time interval during which the given information
1076
+ was, is, or is expected to be valid. The interval can
1077
+ be open or closed, as well as infinite or undefined on
1078
+ either side.
1079
+ </xs:documentation>
1080
+ </xs:annotation>
1081
+ </xs:element>
1082
+ </xs:sequence>
1083
+ </xs:extension>
1084
+ </xs:complexContent>
1085
+ </xs:complexType>
1086
+ <xs:complexType name="HXIT_CE">
1087
+ <xs:complexContent>
1088
+ <xs:extension base="CE">
1089
+ <xs:sequence>
1090
+ <xs:element name="validTime" minOccurs="0" maxOccurs="1" type="IVL_TS">
1091
+ <xs:annotation>
1092
+ <xs:documentation>
1093
+ The time interval during which the given information
1094
+ was, is, or is expected to be valid. The interval can
1095
+ be open or closed, as well as infinite or undefined on
1096
+ either side.
1097
+ </xs:documentation>
1098
+ </xs:annotation>
1099
+ </xs:element>
1100
+ </xs:sequence>
1101
+ </xs:extension>
1102
+ </xs:complexContent>
1103
+ </xs:complexType>
1104
+ <xs:complexType name="BXIT_CD">
1105
+ <xs:complexContent>
1106
+ <xs:extension base="CD">
1107
+ <xs:attribute name="qty" type="int" use="optional" default="1">
1108
+ <xs:annotation>
1109
+ <xs:documentation>
1110
+ The quantity in which the bag item occurs in its containing bag.
1111
+ </xs:documentation>
1112
+ </xs:annotation>
1113
+ </xs:attribute>
1114
+ </xs:extension>
1115
+ </xs:complexContent>
1116
+ </xs:complexType>
1117
+ <xs:complexType name="BXIT_IVL_PQ">
1118
+ <xs:complexContent>
1119
+ <xs:extension base="IVL_PQ">
1120
+ <xs:attribute name="qty" type="int" use="optional" default="1">
1121
+ <xs:annotation>
1122
+ <xs:documentation>
1123
+ The quantity in which the bag item occurs in its containing bag.
1124
+ </xs:documentation>
1125
+ </xs:annotation>
1126
+ </xs:attribute>
1127
+ </xs:extension>
1128
+ </xs:complexContent>
1129
+ </xs:complexType>
1130
+ <xs:complexType name="SLIST_PQ">
1131
+ <xs:complexContent>
1132
+ <xs:extension base="ANY">
1133
+ <xs:sequence>
1134
+ <xs:element name="origin" minOccurs="1" maxOccurs="1" type="PQ">
1135
+ <xs:annotation>
1136
+ <xs:documentation>
1137
+ The origin of the list item value scale, i.e., the
1138
+ physical quantity that a zero-digit in the sequence
1139
+ would represent.
1140
+ </xs:documentation>
1141
+ </xs:annotation>
1142
+ </xs:element>
1143
+ <xs:element name="scale" minOccurs="1" maxOccurs="1" type="PQ">
1144
+ <xs:annotation>
1145
+ <xs:documentation>
1146
+ A ratio-scale quantity that is factored out of the
1147
+ digit sequence.
1148
+ </xs:documentation>
1149
+ </xs:annotation>
1150
+ </xs:element>
1151
+ <xs:element name="digits" minOccurs="1" maxOccurs="1" type="list_int">
1152
+ <xs:annotation>
1153
+ <xs:documentation>
1154
+ A sequence of raw digits for the sample values. This is
1155
+ typically the raw output of an A/D converter.
1156
+ </xs:documentation>
1157
+ </xs:annotation>
1158
+ </xs:element>
1159
+ </xs:sequence>
1160
+ </xs:extension>
1161
+ </xs:complexContent>
1162
+ </xs:complexType>
1163
+ <xs:simpleType name="list_int">
1164
+ <xs:list itemType="int"/>
1165
+ </xs:simpleType>
1166
+ <xs:complexType name="SLIST_TS">
1167
+ <xs:complexContent>
1168
+ <xs:extension base="ANY">
1169
+ <xs:sequence>
1170
+ <xs:element name="origin" minOccurs="1" maxOccurs="1" type="TS">
1171
+ <xs:annotation>
1172
+ <xs:documentation>
1173
+ The origin of the list item value scale, i.e., the
1174
+ physical quantity that a zero-digit in the sequence
1175
+ would represent.
1176
+ </xs:documentation>
1177
+ </xs:annotation>
1178
+ </xs:element>
1179
+ <xs:element name="scale" minOccurs="1" maxOccurs="1" type="PQ">
1180
+ <xs:annotation>
1181
+ <xs:documentation>
1182
+ A ratio-scale quantity that is factored out of the
1183
+ digit sequence.
1184
+ </xs:documentation>
1185
+ </xs:annotation>
1186
+ </xs:element>
1187
+ <xs:element name="digits" minOccurs="1" maxOccurs="1" type="list_int">
1188
+ <xs:annotation>
1189
+ <xs:documentation>
1190
+ A sequence of raw digits for the sample values. This is
1191
+ typically the raw output of an A/D converter.
1192
+ </xs:documentation>
1193
+ </xs:annotation>
1194
+ </xs:element>
1195
+ </xs:sequence>
1196
+ </xs:extension>
1197
+ </xs:complexContent>
1198
+ </xs:complexType>
1199
+ <xs:complexType name="GLIST_TS">
1200
+ <xs:complexContent>
1201
+ <xs:extension base="ANY">
1202
+ <xs:sequence>
1203
+ <xs:element name="head" minOccurs="1" maxOccurs="1" type="TS">
1204
+ <xs:annotation>
1205
+ <xs:documentation>
1206
+ This is the start-value of the generated list.
1207
+ </xs:documentation>
1208
+ </xs:annotation>
1209
+ </xs:element>
1210
+ <xs:element name="increment" minOccurs="1" maxOccurs="1" type="PQ">
1211
+ <xs:annotation>
1212
+ <xs:documentation>
1213
+ The difference between one value and its previous
1214
+ different value. For example, to generate the sequence
1215
+ (1; 4; 7; 10; 13; ...) the increment is 3; likewise to
1216
+ generate the sequence (1; 1; 4; 4; 7; 7; 10; 10; 13;
1217
+ 13; ...) the increment is also 3.
1218
+ </xs:documentation>
1219
+ </xs:annotation>
1220
+ </xs:element>
1221
+ </xs:sequence>
1222
+ <xs:attribute name="period" type="int" use="optional">
1223
+ <xs:annotation>
1224
+ <xs:documentation>
1225
+ If non-NULL, specifies that the sequence alternates,
1226
+ i.e., after this many increments, the sequence item
1227
+ values roll over to start from the initial sequence
1228
+ item value. For example, the sequence (1; 2; 3; 1; 2;
1229
+ 3; 1; 2; 3; ...) has period 3; also the sequence
1230
+ (1; 1; 2; 2; 3; 3; 1; 1; 2; 2; 3; 3; ...) has period
1231
+ 3 too.
1232
+ </xs:documentation>
1233
+ </xs:annotation>
1234
+ </xs:attribute>
1235
+ <xs:attribute name="denominator" type="int" use="optional">
1236
+ <xs:annotation>
1237
+ <xs:documentation>
1238
+ The integer by which the index for the sequence is
1239
+ divided, effectively the number of times the sequence
1240
+ generates the same sequence item value before
1241
+ incrementing to the next sequence item value. For
1242
+ example, to generate the sequence (1; 1; 1; 2; 2; 2; 3; 3;
1243
+ 3; ...) the denominator is 3.
1244
+ </xs:documentation>
1245
+ </xs:annotation>
1246
+ </xs:attribute>
1247
+ </xs:extension>
1248
+ </xs:complexContent>
1249
+ </xs:complexType>
1250
+ <xs:complexType name="GLIST_PQ">
1251
+ <xs:complexContent>
1252
+ <xs:extension base="ANY">
1253
+ <xs:sequence>
1254
+ <xs:element name="head" minOccurs="1" maxOccurs="1" type="PQ">
1255
+ <xs:annotation>
1256
+ <xs:documentation>
1257
+ This is the start-value of the generated list.
1258
+ </xs:documentation>
1259
+ </xs:annotation>
1260
+ </xs:element>
1261
+ <xs:element name="increment" minOccurs="1" maxOccurs="1" type="PQ">
1262
+ <xs:annotation>
1263
+ <xs:documentation>
1264
+ The difference between one value and its previous
1265
+ different value. For example, to generate the sequence
1266
+ (1; 4; 7; 10; 13; ...) the increment is 3; likewise to
1267
+ generate the sequence (1; 1; 4; 4; 7; 7; 10; 10; 13;
1268
+ 13; ...) the increment is also 3.
1269
+ </xs:documentation>
1270
+ </xs:annotation>
1271
+ </xs:element>
1272
+ </xs:sequence>
1273
+ <xs:attribute name="period" type="int" use="optional">
1274
+ <xs:annotation>
1275
+ <xs:documentation>
1276
+ If non-NULL, specifies that the sequence alternates,
1277
+ i.e., after this many increments, the sequence item
1278
+ values roll over to start from the initial sequence
1279
+ item value. For example, the sequence (1; 2; 3; 1; 2;
1280
+ 3; 1; 2; 3; ...) has period 3; also the sequence
1281
+ (1; 1; 2; 2; 3; 3; 1; 1; 2; 2; 3; 3; ...) has period
1282
+ 3 too.
1283
+ </xs:documentation>
1284
+ </xs:annotation>
1285
+ </xs:attribute>
1286
+ <xs:attribute name="denominator" type="int" use="optional">
1287
+ <xs:annotation>
1288
+ <xs:documentation>
1289
+ The integer by which the index for the sequence is
1290
+ divided, effectively the number of times the sequence
1291
+ generates the same sequence item value before
1292
+ incrementing to the next sequence item value. For
1293
+ example, to generate the sequence (1; 1; 1; 2; 2; 2; 3; 3;
1294
+ 3; ...) the denominator is 3.
1295
+ </xs:documentation>
1296
+ </xs:annotation>
1297
+ </xs:attribute>
1298
+ </xs:extension>
1299
+ </xs:complexContent>
1300
+ </xs:complexType>
1301
+ <xs:complexType name="RTO_PQ_PQ">
1302
+ <xs:annotation>
1303
+ <xs:appinfo>
1304
+ <diff>RTO_PQ_PQ</diff>
1305
+ </xs:appinfo>
1306
+ </xs:annotation>
1307
+ <xs:complexContent>
1308
+ <xs:extension base="QTY">
1309
+ <xs:sequence>
1310
+ <xs:element name="numerator" type="PQ">
1311
+ <xs:annotation>
1312
+ <xs:documentation>
1313
+ The quantity that is being divided in the ratio. The
1314
+ default is the integer number 1 (one).
1315
+ </xs:documentation>
1316
+ </xs:annotation>
1317
+ </xs:element>
1318
+ <xs:element name="denominator" type="PQ">
1319
+ <xs:annotation>
1320
+ <xs:documentation>
1321
+ The quantity that devides the numerator in the ratio.
1322
+ The default is the integer number 1 (one).
1323
+ The denominator must not be zero.
1324
+ </xs:documentation>
1325
+ </xs:annotation>
1326
+ </xs:element>
1327
+ </xs:sequence>
1328
+ </xs:extension>
1329
+ </xs:complexContent>
1330
+ </xs:complexType>
1331
+ <xs:complexType name="RTO_MO_PQ">
1332
+ <xs:annotation>
1333
+ <xs:appinfo>
1334
+ <diff>RTO_MO_PQ</diff>
1335
+ </xs:appinfo>
1336
+ </xs:annotation>
1337
+ <xs:complexContent>
1338
+ <xs:extension base="QTY">
1339
+ <xs:sequence>
1340
+ <xs:element name="numerator" type="MO">
1341
+ <xs:annotation>
1342
+ <xs:documentation>
1343
+ The quantity that is being divided in the ratio. The
1344
+ default is the integer number 1 (one).
1345
+ </xs:documentation>
1346
+ </xs:annotation>
1347
+ </xs:element>
1348
+ <xs:element name="denominator" type="PQ">
1349
+ <xs:annotation>
1350
+ <xs:documentation>
1351
+ The quantity that devides the numerator in the ratio.
1352
+ The default is the integer number 1 (one).
1353
+ The denominator must not be zero.
1354
+ </xs:documentation>
1355
+ </xs:annotation>
1356
+ </xs:element>
1357
+ </xs:sequence>
1358
+ </xs:extension>
1359
+ </xs:complexContent>
1360
+ </xs:complexType>
1361
+ <xs:complexType name="UVP_TS">
1362
+ <xs:complexContent>
1363
+ <xs:extension base="TS">
1364
+ <xs:attribute name="probability" type="probability" use="optional">
1365
+ <xs:annotation>
1366
+ <xs:documentation>
1367
+ The probability assigned to the value, a decimal number
1368
+ between 0 (very uncertain) and 1 (certain).
1369
+ </xs:documentation>
1370
+ </xs:annotation>
1371
+ </xs:attribute>
1372
+ </xs:extension>
1373
+ </xs:complexContent>
1374
+ </xs:complexType>
1375
+ </xs:schema>