root / projects / DailyProductionReport_1.0 / XML / Version1.0 / WITSML131 / typ_dataTypes.xsd @ 16

Revision 16, 34.1 kB (checked in by ryland, 15 years ago)
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xsd:schema
3        elementFormDefault="qualified"
4        attributeFormDefault="unqualified"
5        targetNamespace="http://www.witsml.org/schemas/131"
6        xmlns:witsml="http://www.witsml.org/schemas/131"
7        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
8        version="1.3.1">
9        <!--                                                         -->
10        <!-- POSC License Agreement
11        This file is distributed under the POSC License Agreement at
12        http://www.posc.org/about/license.shtml.
13        Use of this file constitutes agreement with the POSC License Agreement.
14        -->
15        <!--                                                         -->
16        <xsd:include schemaLocation="typ_catalog.xsd"/>
17        <!--                                                         -->
18        <!-- =============== DTS TYPES  ================== -->
19        <!--                                                         -->
20        <xsd:simpleType name="anyDate">
21                <xsd:annotation>
22                        <xsd:documentation>A union of date and dateTime, so that time is not mandatory.</xsd:documentation>
23                </xsd:annotation>
24                <xsd:union memberTypes="xsd:dateTime xsd:date xsd:gYearMonth xsd:gYear"/>
25        </xsd:simpleType>
26        <!--                                                         -->
27        <xsd:complexType name="generalMeasureType">
28                <xsd:simpleContent>
29                        <xsd:extension base="witsml:abstractMeasure">
30                                <xsd:attribute name="uom" type="witsml:uomString" use="optional"/>
31                        </xsd:extension>
32                </xsd:simpleContent>
33        </xsd:complexType>
34        <!--                                                         -->
35        <xsd:complexType name="temperatureSlopeMeasure">
36                <xsd:simpleContent>
37                        <xsd:extension base="witsml:abstractMeasure">
38                                <xsd:attribute name="uom" type="witsml:uomString" use="optional"/>
39                        </xsd:extension>
40                </xsd:simpleContent>
41        </xsd:complexType>
42        <!--                                                         -->
43        <xsd:complexType name="typeOptionalClassString">
44                <xsd:annotation>
45                        <xsd:documentation>A type with a classType attribute. This allows a user to give a
46                        classification of something, and to specify the type of classification that it is.
47                        There is no control over the class values, or the class types.</xsd:documentation>
48                </xsd:annotation>
49                <xsd:simpleContent>
50                        <xsd:extension base="witsml:abstractNameString">
51                                <xsd:attribute name="classType" type="witsml:kindString" use="optional">
52                                        <xsd:annotation>
53                                                <xsd:documentation>This identifies the classification system to
54                                                which the class belongs. </xsd:documentation>
55                                        </xsd:annotation>
56                                </xsd:attribute>
57                        </xsd:extension>
58                </xsd:simpleContent>
59        </xsd:complexType>
60        <!--                                                         -->
61        <!-- =============== MISCELLANEOUS TYPES  ================== -->
62        <!--                                                         -->
63        <xsd:simpleType name="logicalBoolean" final="#all">
64                <xsd:annotation>
65                        <xsd:documentation>Values of "true" (or "1") and "false" (or "0").</xsd:documentation>
66                </xsd:annotation>
67                <xsd:restriction base="witsml:abstractBoolean"/>
68        </xsd:simpleType>
69        <!--                                                         -->
70        <xsd:simpleType name="date" final="#all">
71                <xsd:annotation>
72                        <xsd:documentation>A julian date.</xsd:documentation>
73                </xsd:annotation>
74                <xsd:restriction base="witsml:abstractDate"/>
75        </xsd:simpleType>
76        <!--                                                         -->
77        <xsd:simpleType name="timestamp" final="#all">
78                <xsd:annotation>
79                        <xsd:documentation>A date with the time of day and an optional time zone.
80                        While the time zone is optional, it is strongly advised that the zone
81                        always be specified in each date time value.</xsd:documentation>
82                </xsd:annotation>
83                <xsd:restriction base="witsml:abstractDateTime"/>
84        </xsd:simpleType>
85        <!--                                                         -->
86        <xsd:simpleType name="timeZone" final="#all">
87                <xsd:annotation>
88                        <xsd:documentation>A time zone conforming to the XSD:dateTime specification.
89                        It should be of the form "Z" or "shh.mm" where
90                                "s" is "+" or "-",
91                                "hh" is 00 to 23 and
92                                "mm" is 00 to 59.</xsd:documentation>
93                </xsd:annotation>
94                <xsd:restriction base="witsml:abstractString">
95                        <xsd:pattern value="[Z]|([-+](([01][0-9])|(2[0-3])):[0-5][0-9])"/>
96                </xsd:restriction>
97        </xsd:simpleType>
98        <!--                                                         -->
99        <xsd:simpleType name="calendarYear" final="#all">
100                <xsd:annotation>
101                        <xsd:documentation>A calendar year (CCYY) in the gregorian calendar.</xsd:documentation>
102                </xsd:annotation>
103                <xsd:restriction base="witsml:abstractYear"/>
104        </xsd:simpleType>
105        <!--                                                         -->
106        <xsd:complexType name="yAxisAzimuth">
107                <xsd:annotation>
108                        <xsd:documentation>The angle of a Y axis from North.
109                        This is a variation of planeAngleMeasure with an
110                        attribute defining the direction of north.</xsd:documentation>
111                </xsd:annotation>
112                <xsd:simpleContent>
113                        <xsd:extension base="witsml:abstractMeasure">
114                                <xsd:attribute name="uom" type="witsml:planeAngleUom" use="required">
115                                        <xsd:annotation>
116                                                <xsd:documentation>The unit of measure of the azimuth value.</xsd:documentation>
117                                        </xsd:annotation>
118                                </xsd:attribute>
119                                <xsd:attribute name="northDirection" type="witsml:AziRef" use="optional">
120                                        <xsd:annotation>
121                                                <xsd:documentation>Specifies the direction to be considered North for the y axis.</xsd:documentation>
122                                        </xsd:annotation>
123                                </xsd:attribute>
124                        </xsd:extension>
125                </xsd:simpleContent>
126        </xsd:complexType>
127        <!--                                                         -->
128        <xsd:complexType name="volumePerVolumeMeasurePercent">
129                <xsd:annotation>
130                        <xsd:documentation>A volume per volume measure that is constrained to a unit of percent.</xsd:documentation>
131                </xsd:annotation>
132                <xsd:simpleContent>
133                        <xsd:extension base="witsml:abstractMeasure">
134                                <xsd:attribute name="uom" type="witsml:PercentUom" use="required"/>
135                        </xsd:extension>
136                </xsd:simpleContent>
137        </xsd:complexType>
138        <!--                                                         -->
139        <xsd:simpleType name="PercentUom">
140                <xsd:restriction base="witsml:abstractUomEnum">
141                        <xsd:enumeration value="%"/>
142                </xsd:restriction>
143        </xsd:simpleType>
144        <!--                                                         -->
145        <xsd:simpleType name="unitlessQuantity" final="#all">
146                <xsd:annotation>
147                        <xsd:documentation>A unitless quantity. This should not
148                        be confused with a dimensionless measure.</xsd:documentation>
149                </xsd:annotation>
150                <xsd:restriction base="witsml:abstractDouble"/>
151        </xsd:simpleType>
152        <!--                                                         -->
153        <xsd:complexType name="genericMeasure">
154                <xsd:annotation>
155                        <xsd:documentation>A generic measure type.
156                        This should not be used except in situations where the underlying class of data is
157                        captured elsewhere. For example, for a log curve.</xsd:documentation>
158                </xsd:annotation>
159                <xsd:simpleContent>
160                        <xsd:extension base="witsml:abstractMeasure">
161                                <xsd:attribute name="uom" type="witsml:uomString" use="optional">
162                                        <xsd:annotation>
163                                                <xsd:documentation>The unit of measure for the quantity.
164                                                The uom is mandatory unless the value represents a unitless quantity.</xsd:documentation>
165                                        </xsd:annotation>
166                                </xsd:attribute>
167                        </xsd:extension>
168                </xsd:simpleContent>
169        </xsd:complexType>
170        <!--                                                         -->
171        <xsd:complexType name="indexCurve">
172                <xsd:annotation>
173                        <xsd:documentation>The mnemonic of a log index curve plus
174                        the column index of the curve.</xsd:documentation>
175                </xsd:annotation>
176                <xsd:simpleContent>
177                        <xsd:extension base="witsml:str32">
178                                <xsd:attribute name="columnIndex" type="witsml:nonNegativeCount" use="required">
179                                        <xsd:annotation>
180                                                <xsd:documentation>The column index of the curve.</xsd:documentation>
181                                        </xsd:annotation>
182                                </xsd:attribute>
183                        </xsd:extension>
184                </xsd:simpleContent>
185        </xsd:complexType>
186        <!--                                                         -->
187        <xsd:complexType name='ratioGenericMeasure'>
188                <xsd:annotation>
189                        <xsd:documentation>Representation of a number as a double, possibly qualified as a ratio of doubles.   
190                        Ratio component attributes 'numerator' and 'denominator' may be both present or both absent.   
191                        When ratio component attributes are present, the ratio represented is to be used with
192                        the double representation included for human readability.
193                        A 'canonical' representation, according to the following rules, is suggested:
194                        Only use numerator/denominator when the representation of the number as double is not
195                        sufficiently precise (i. e. causes errors of accumulation).
196                        Express both numerator and denominator as integers (doubles with integer values) reduced
197                        to 'least common denominator' if possible.</xsd:documentation>
198                </xsd:annotation>
199                <xsd:simpleContent>
200                        <xsd:extension base="witsml:abstractMeasure">
201                                <xsd:attribute name="uom" type="witsml:uomString" use="required">
202                                        <xsd:annotation>
203                                                <xsd:documentation>The unit of measure for the quantity.
204                                                If for some reason a uom is not appropriate for the quantity,
205                                                a unit of "Euc" should be used.</xsd:documentation>
206                                        </xsd:annotation>
207                                </xsd:attribute>
208                                <xsd:attribute name='numerator' type='witsml:unitlessQuantity' use="optional"/>
209                                <xsd:attribute name='denominator' type='witsml:unitlessQuantity' use="optional"/>
210                        </xsd:extension>
211                </xsd:simpleContent>
212        </xsd:complexType>
213        <!--                                                         -->
214        <!-- ===================== array types ===================== -->
215        <!--                                                         -->
216        <xsd:simpleType name='listOfString'>
217                <xsd:annotation>
218                        <xsd:documentation>A representation of a list of xsd:string values,
219                        restricted to strings without embedded whitespace.</xsd:documentation>
220                </xsd:annotation>
221                <xsd:list itemType='witsml:str32'/>
222        </xsd:simpleType>
223        <!--                                                         -->
224        <xsd:simpleType name='listOfDouble'>
225                <xsd:annotation>
226                        <xsd:documentation>
227                                A representation of a list of xsd:double values.
228                        </xsd:documentation>
229                </xsd:annotation>
230                <xsd:list itemType='witsml:abstractDouble'/>
231        </xsd:simpleType>
232        <!--                                                         -->
233        <!-- =========== uid and foreign key data types ============ -->
234        <!--                                                         -->
235        <xsd:complexType name="refNameString" final="#all">
236                <xsd:annotation>
237                        <xsd:documentation>A reference to a name in another node of the xml hierachy.
238                        This value represents a foreign key from one element to another.</xsd:documentation>
239                </xsd:annotation>
240                <xsd:simpleContent>
241                        <xsd:extension base="witsml:abstractNameString">
242                                <xsd:attribute name="uidRef" type="witsml:refString" use="optional">
243                                        <xsd:annotation>
244                                                <xsd:documentation>A reference to the unique identifier (uid attribute) in the node
245                                                referenced by the name value.
246                                                This attribute is required within the context of a WITSML server.</xsd:documentation>
247                                        </xsd:annotation>
248                                </xsd:attribute>
249                        </xsd:extension>
250                </xsd:simpleContent>
251        </xsd:complexType>
252        <!--                                                         -->
253        <xsd:complexType name="refObjectString" final="#all">
254                <xsd:annotation>
255                        <xsd:documentation>A reference to a name in another object.
256                        This value represents a foreign key from one object to another.
257                        Knowledge of the object being referenced is defined by an attribute.</xsd:documentation>
258                </xsd:annotation>
259                <xsd:simpleContent>
260                        <xsd:extension base="witsml:abstractNameString">
261                                <xsd:attribute name="object" type="witsml:nameString" use="required">
262                                        <xsd:annotation>
263                                                <xsd:documentation>The name of the singular object being referenced.</xsd:documentation>
264                                        </xsd:annotation>
265                                </xsd:attribute>
266                                <xsd:attribute name="uidRef" type="witsml:refString" use="optional">
267                                        <xsd:annotation>
268                                                <xsd:documentation>A reference to the unique identifier (uid attribute) in the object
269                                                referenced by the name value.
270                                                This attribute is required within the context of a WITSML server.</xsd:documentation>
271                                        </xsd:annotation>
272                                </xsd:attribute>
273                        </xsd:extension>
274                </xsd:simpleContent>
275        </xsd:complexType>
276        <!--                                                         -->
277        <xsd:complexType name="refPositiveCount" final="#all">
278                <xsd:annotation>
279                        <xsd:documentation>A reference to a index value in another node of the xml hierachy.
280                        This value represents a foreign key from one element to another.</xsd:documentation>
281                </xsd:annotation>
282                <xsd:simpleContent>
283                        <xsd:extension base="witsml:abstractPositiveCount">
284                                <xsd:attribute name="uidRef" type="witsml:refString" use="optional">
285                                        <xsd:annotation>
286                                                <xsd:documentation>A reference to the unique identifier (uid attribute) in the node
287                                                referenced by the index value.
288                                                This attribute is required within the context of a WITSML server.</xsd:documentation>
289                                        </xsd:annotation>
290                                </xsd:attribute>
291                        </xsd:extension>
292                </xsd:simpleContent>
293        </xsd:complexType>
294        <!--                                                     -->
295        <xsd:simpleType name="refWellDatum" final="#all">
296                <xsd:annotation>
297                        <xsd:documentation>A reference to a wellDatum in the current well.
298                        This value must match the uid value in a WellDatum.
299                        This value represents a foreign key from one element to another.
300                        This is an exception to the convention that a foreign key must utilize both
301                        a human contextual name and a uid value. For messages outside the context of
302                        a server then this value will commonly match the value of the name of the
303                        wellDatum (e.g., 'KB') if uids are not not used in that context.
304                        This was a compromise in order to allow the coordinate structures to be simple
305                        and still be usable both within the context of a server and outside the context of a server.</xsd:documentation>
306                </xsd:annotation>
307                <xsd:restriction base="witsml:abstractUidString"/>
308        </xsd:simpleType>
309        <!--                                                         -->
310        <!-- =========== CONTENT SPECIFIC STRING TYPES  ============ -->
311        <!--                                                         -->
312        <xsd:simpleType name="nameString" final="#all">
313                <xsd:annotation>
314                        <xsd:documentation>A user assigned human recognizable contextual name of something.
315                        There should be no assumption that (interoperable) semantic information will be extracted from the name by a third party.
316                        This type of value is generally not guaranteed to be unique and is not a candidate to be replaced by an enumeration.</xsd:documentation>
317                </xsd:annotation>
318                <xsd:restriction base="witsml:abstractNameString"/>
319        </xsd:simpleType>
320        <!--                                                         -->
321        <xsd:simpleType name="commentString" final="#all">
322                <xsd:annotation>
323                        <xsd:documentation>A comment or remark intended for human consumption.
324                        There should be no assumption that semantics can be extracted from this field by a computer.
325                        Neither should there be an assumption that any two humans will interpret the information
326                        in the same way (i.e., it may not be interoperable).</xsd:documentation>
327                </xsd:annotation>
328                <xsd:restriction base="witsml:abstractCommentString"/>
329        </xsd:simpleType>
330        <!--                                                         -->
331        <xsd:simpleType name="descriptionString" final="#all">
332                <xsd:annotation>
333                        <xsd:documentation>A textual description of something.</xsd:documentation>
334                </xsd:annotation>
335                <xsd:restriction base="witsml:abstractString">
336                        <xsd:maxLength value="256"/>
337                </xsd:restriction>
338        </xsd:simpleType>
339        <!--                                                         -->
340        <xsd:simpleType name="shortDescriptionString" final="#all">
341                <xsd:annotation>
342                        <xsd:documentation>A short textual description of something.</xsd:documentation>
343                </xsd:annotation>
344                <xsd:restriction base="witsml:abstractString">
345                        <xsd:maxLength value="64"/>
346                </xsd:restriction>
347        </xsd:simpleType>
348        <!--                                                         -->
349        <xsd:complexType name="encodedArrayString">
350                <xsd:annotation>
351                        <xsd:documentation>An encoded value or values. The encoding may utilize
352                        any of several xsd encodings. Something external to the value must
353                        define the encoding. The uom attribute is optional because the value may
354                        be a string or unitless quantity. If the value is a measure then
355                        the uom must be specified.</xsd:documentation>
356                </xsd:annotation>
357                <xsd:simpleContent>
358                        <xsd:extension base="witsml:abstractMaximumLengthString">
359                                <xsd:attribute name="uom" type="witsml:uomString" use="optional"/>
360                        </xsd:extension>
361                </xsd:simpleContent>
362        </xsd:complexType>
363        <!--                                                         -->
364        <xsd:simpleType name="encodedValueString" final="#all">
365                <xsd:annotation>
366                        <xsd:documentation>A single value. The encoding may utilize
367                        any of several xsd encodings. Something external to the value must
368                        define the encoding.</xsd:documentation>
369                </xsd:annotation>
370                <xsd:restriction base="witsml:abstractString">
371                        <xsd:maxLength value="32"/>
372                </xsd:restriction>
373        </xsd:simpleType>
374        <!--                                                         -->
375        <xsd:simpleType name="kindString" final="#all">
376                <xsd:annotation>
377                        <xsd:documentation>A community assigned human recognizable name.
378                        This type of value is intended to be unique and is generally a candidate to be constrained to an enumerated list.</xsd:documentation>
379                </xsd:annotation>
380                <xsd:restriction base="witsml:abstractTypeEnum">
381                </xsd:restriction>
382        </xsd:simpleType>
383        <!--                                                         -->
384        <xsd:simpleType name="uomString" final="#all">
385                <xsd:annotation>
386                        <xsd:documentation>A unit of measure acronym from the POSC unit of measure file.</xsd:documentation>
387                </xsd:annotation>
388                <xsd:restriction base="witsml:abstractUomEnum"/>
389        </xsd:simpleType>
390        <!--                                                         -->
391        <xsd:simpleType name="uidString" final="#all">
392                <xsd:annotation>
393                        <xsd:documentation>A locally unique identifier.
394                        The value is not intended to convey any semantic content (e.g., it may be computer generated).
395                        The value is only required to be unique within a context in a document (e.g., defined via key and keyref).
396                        There is no guarantee that the same data in multiple documents will utilize the same uid value
397                        unless enforced by the source of the document (e.g., a document server).</xsd:documentation>
398                </xsd:annotation>
399                <xsd:restriction base="witsml:abstractUidString"/>
400        </xsd:simpleType>
401        <!--                                                     -->
402        <xsd:simpleType name="refString" final="#all">
403                <xsd:annotation>
404                        <xsd:documentation>A reference to the unique identifier of another element.
405                        This value represents a foreign key from one element to another.
406                        The value should match the value of an attribute of type uidString.</xsd:documentation>
407                </xsd:annotation>
408                <xsd:restriction base="witsml:abstractUidString"/>
409        </xsd:simpleType>
410        <!--                                                         -->
411        <xsd:simpleType name="schemaVersionString" final="#all">
412                <xsd:annotation>
413                        <xsd:documentation>The version of the schema.
414                        The first three levels are fixed. The fourth level can vary
415                        to represent on the constraints defined in enumerations and
416                        XML loader files. </xsd:documentation>
417                </xsd:annotation>
418                <xsd:restriction base="witsml:abstractString">
419                        <xsd:maxLength value="16"/>
420                        <xsd:pattern value="1\.3\.1\.([1-9]|([1-9][0-9]))"/>
421                </xsd:restriction>
422        </xsd:simpleType>
423        <!--                                                         -->
424        <xsd:complexType name="nameStruct" final="#all">
425                <xsd:annotation>
426                        <xsd:documentation>The name of something within a naming system.</xsd:documentation>
427                </xsd:annotation>
428                <xsd:simpleContent>
429                        <xsd:extension base="witsml:abstractNameString">
430                                <xsd:attribute name="namingSystem" type="witsml:nameString" use="optional">
431                                        <xsd:annotation>
432                                                <xsd:documentation>The naming system within the name is (hopefully) unique.</xsd:documentation>
433                                        </xsd:annotation>
434                                </xsd:attribute>
435                        </xsd:extension>
436                </xsd:simpleContent>
437        </xsd:complexType>
438        <!--                                                         -->
439        <xsd:complexType name="wellKnownNameStruct" final="#all">
440                <xsd:annotation>
441                        <xsd:documentation>The name of something within a mandatory naming system
442                        with an optional code.</xsd:documentation>
443                </xsd:annotation>
444                <xsd:simpleContent>
445                        <xsd:extension base="witsml:abstractNameString">
446                                <xsd:attribute name="namingSystem" type="witsml:nameString" use="required">
447                                        <xsd:annotation>
448                                                <xsd:documentation>The naming system within the name is unique.</xsd:documentation>
449                                        </xsd:annotation>
450                                </xsd:attribute>
451                                <xsd:attribute name="code" type="witsml:kindString" use="optional">
452                                        <xsd:annotation>
453                                                <xsd:documentation>A unique (short) code associated with the name.</xsd:documentation>
454                                        </xsd:annotation>
455                                </xsd:attribute>
456                        </xsd:extension>
457                </xsd:simpleContent>
458        </xsd:complexType>
459        <!--                                                         -->
460        <xsd:simpleType name="uncollapsedString" final="#all">
461                <xsd:annotation>
462                        <xsd:documentation>A textual string that retains all whitespace.</xsd:documentation>
463                </xsd:annotation>
464                <xsd:restriction base="witsml:abstractUncollapsedString">
465                        <xsd:maxLength value="256"/>
466                </xsd:restriction>
467        </xsd:simpleType>
468        <!--                                                         -->
469        <xsd:simpleType name="iadcBearingWearCode" final="#all">
470                <xsd:annotation>
471                        <xsd:documentation>IADC bearing wear code: integer 0 - 8 or one of the letters E, F, N or X. .</xsd:documentation>
472                </xsd:annotation>
473                <xsd:restriction base="witsml:abstractString">
474                        <xsd:maxLength value="1"/>
475                        <xsd:pattern value="[0-8EFNX]"/>
476                </xsd:restriction>
477        </xsd:simpleType>
478        <!--                                                         -->
479        <xsd:simpleType name="geodeticZoneString" final="#all">
480                <xsd:annotation>
481                        <xsd:documentation>A geodetic zone with values from 1 to 60 and a required direction
482                        of "N" (North) or "S" (South). For example, "21N".</xsd:documentation>
483                </xsd:annotation>
484                <xsd:restriction base="witsml:abstractString">
485                        <xsd:maxLength value="3"/>
486                        <xsd:pattern value="([1-9]|[1-5][0-9]|60)[NS]"/>
487                </xsd:restriction>
488        </xsd:simpleType>
489        <!--                                                         -->
490        <!-- =========== Well Based Coordinate Types  ============ -->
491        <!--                                                         -->
492        <xsd:complexType name="measuredDepthCoord" final="#all">
493                <xsd:annotation>
494                        <xsd:documentation>A measured depth coordinate in a wellbore.
495                        Positive moving from the reference datum toward the bottomhole.
496                        All coordinates with the same datum (and same uom) can be considered to be in the same
497                        Coordinate Reference System and are thus directly comparable.</xsd:documentation>
498                </xsd:annotation>
499                <xsd:simpleContent>
500                        <xsd:extension base="witsml:abstractMeasure">
501                                <xsd:attribute name="uom" type="witsml:MeasuredDepthUom" use="required">
502                                        <xsd:annotation>
503                                                <xsd:documentation>The unit of measure of the quantity value.</xsd:documentation>
504                                        </xsd:annotation>
505                                </xsd:attribute>
506                                <xsd:attribute name="datum" type="witsml:refWellDatum" use="optional">
507                                        <xsd:annotation>
508                                                <xsd:documentation>A pointer to the reference datum for this coordinate
509                                                value as defined in WellDatum. This value is assumed to match the uid
510                                                value in a WellDatum.
511                                                If not given then the default WellDatum must be assumed.</xsd:documentation>
512                                        </xsd:annotation>
513                                </xsd:attribute>
514                        </xsd:extension>
515                </xsd:simpleContent>
516        </xsd:complexType>
517        <!--                                                         -->
518        <xsd:simpleType name="MeasuredDepthUom">
519                <xsd:annotation>
520                        <xsd:documentation>The units of measure that are valid for measured depths in a wellbore.</xsd:documentation>
521                </xsd:annotation>
522                <xsd:restriction base="witsml:abstractUomEnum">
523                        <xsd:enumeration value="m">
524                                <xsd:annotation>
525                                        <xsd:documentation>meter</xsd:documentation>
526                                </xsd:annotation>
527                        </xsd:enumeration>
528                        <xsd:enumeration value="ft">
529                                <xsd:annotation>
530                                        <xsd:documentation>International Foot</xsd:documentation>
531                                </xsd:annotation>
532                        </xsd:enumeration>
533                        <xsd:enumeration value="ftUS">
534                                <xsd:annotation>
535                                        <xsd:documentation>US Survey Foot</xsd:documentation>
536                                </xsd:annotation>
537                        </xsd:enumeration>
538                </xsd:restriction>
539        </xsd:simpleType>
540        <!--                                                     -->
541        <xsd:complexType name="wellVerticalDepthCoord" final="#all">
542                <xsd:annotation>
543                        <xsd:documentation>A vertical (gravity based) depth coordinate within the context of a well.
544                        Positive moving downward from the reference datum.
545                        All coordinates with the same datum (and same uom) can be considered to be in the same
546                        Coordinate Reference System and are thus directly comparable.</xsd:documentation>
547                </xsd:annotation>
548                <xsd:simpleContent>
549                        <xsd:extension base="witsml:abstractMeasure">
550                                <xsd:attribute name="uom" type="witsml:WellVerticalCoordinateUom" use="required">
551                                        <xsd:annotation>
552                                                <xsd:documentation>The unit of measure of the quantity value.</xsd:documentation>
553                                        </xsd:annotation>
554                                </xsd:attribute>
555                                <xsd:attribute name="datum" type="witsml:refWellDatum" use="optional">
556                                        <xsd:annotation>
557                                                <xsd:documentation>A pointer to the reference datum for this coordinate
558                                                value as defined in WellDatum.
559                                                If not given then the default WellDatum must be assumed.</xsd:documentation>
560                                        </xsd:annotation>
561                                </xsd:attribute>
562                        </xsd:extension>
563                </xsd:simpleContent>
564        </xsd:complexType>
565        <!--                                                     -->
566        <xsd:complexType name="wellElevationCoord" final="#all">
567                <xsd:annotation>
568                        <xsd:documentation>A vertical (gravity based) elevation coordinate within the context of a well.
569                        Positive moving upward from the reference datum. 
570                        All coordinates with the same datum (and same uom) can be considered to be in the same
571                        Coordinate Reference System and are thus directly comparable.</xsd:documentation>
572                </xsd:annotation>
573                <xsd:simpleContent>
574                        <xsd:extension base="witsml:abstractMeasure">
575                                <xsd:attribute name="uom" type="witsml:WellVerticalCoordinateUom" use="required">
576                                        <xsd:annotation>
577                                                <xsd:documentation>The unit of measure of the quantity value.
578                                                If not given then the default unit of measure of the explicitly
579                                                or implicitly given datum must be assumed.</xsd:documentation>
580                                        </xsd:annotation>
581                                </xsd:attribute>
582                                <xsd:attribute name="datum" type="witsml:refWellDatum" use="optional">
583                                        <xsd:annotation>
584                                                <xsd:documentation>A pointer to the reference datum for this coordinate
585                                                value as defined in WellDatum.
586                                                If not given then the default WellDatum must be assumed.</xsd:documentation>
587                                        </xsd:annotation>
588                                </xsd:attribute>
589                        </xsd:extension>
590                </xsd:simpleContent>
591        </xsd:complexType>
592        <!--                                                     -->
593        <xsd:simpleType name="WellVerticalCoordinateUom">
594                <xsd:annotation>
595                        <xsd:documentation>The units of measure that are valid for vertical gravity based
596                        coordinates (i.e., elevation or vertical depth) within the context of a well.</xsd:documentation>
597                </xsd:annotation>
598                <xsd:restriction base="witsml:abstractUomEnum">
599                        <xsd:enumeration value="m">
600                                <xsd:annotation>
601                                        <xsd:documentation>meter</xsd:documentation>
602                                </xsd:annotation>
603                        </xsd:enumeration>
604                        <xsd:enumeration value="ft">
605                                <xsd:annotation>
606                                        <xsd:documentation>International Foot</xsd:documentation>
607                                </xsd:annotation>
608                        </xsd:enumeration>
609                        <xsd:enumeration value="ftUS">
610                                <xsd:annotation>
611                                        <xsd:documentation>US Survey Foot</xsd:documentation>
612                                </xsd:annotation>
613                        </xsd:enumeration>
614                        <xsd:enumeration value="ftBr(65)">
615                                <xsd:annotation>
616                                        <xsd:documentation>British Foot 1865</xsd:documentation>
617                                </xsd:annotation>
618                        </xsd:enumeration>
619                </xsd:restriction>
620        </xsd:simpleType>
621        <!--                                                         -->
622        <!-- ========== CONTENT SPECIFIC INTEGER TYPES  ============ -->
623        <!--                                                         -->
624        <xsd:simpleType name="nonNegativeCount" final="#all">
625                <xsd:annotation>
626                        <xsd:documentation>A non-negative integer (zero based count or index) with a maximum value of 32767 (2-bytes).
627                        For items that represent "number of" something or a "sequential" count or index.</xsd:documentation>
628                </xsd:annotation>
629                <xsd:restriction base="witsml:abstractShort">
630                        <xsd:minInclusive value="0">
631                                <xsd:annotation>
632                                        <xsd:documentation>This value can be zero but cannot be negative.</xsd:documentation>
633                                </xsd:annotation>
634                        </xsd:minInclusive>
635                </xsd:restriction>
636        </xsd:simpleType>
637        <!--                                                         -->
638        <xsd:simpleType name="positiveCount" final="#all">
639                <xsd:annotation>
640                        <xsd:documentation>A positive integer (one based count or index).</xsd:documentation>
641                </xsd:annotation>
642                <xsd:restriction base="witsml:abstractPositiveCount">
643                        <xsd:minInclusive value="1">
644                                <xsd:annotation>
645                                        <xsd:documentation>This value cannot be negative or zero.</xsd:documentation>
646                                </xsd:annotation>
647                        </xsd:minInclusive>
648                </xsd:restriction>
649        </xsd:simpleType>
650        <!--                                                         -->
651        <xsd:simpleType name="positiveBigCount" final="#all">
652                <xsd:annotation>
653                        <xsd:documentation>A large positive integer (one based count or index) with a maximum value of 2,147,483,647 (4-bytes).</xsd:documentation>
654                </xsd:annotation>
655                <xsd:restriction base="witsml:abstractInt">
656                        <xsd:minInclusive value="1">
657                                <xsd:annotation>
658                                        <xsd:documentation>This value cannot be negative or zero.</xsd:documentation>
659                                </xsd:annotation>
660                        </xsd:minInclusive>
661                </xsd:restriction>
662        </xsd:simpleType>
663        <!--                                                         -->
664        <xsd:simpleType name="integerCount" final="#all">
665                <xsd:annotation>
666                        <xsd:documentation>A positive or negative count with a maximum positive value of 2147483647 (4-bytes).</xsd:documentation>
667                </xsd:annotation>
668                <xsd:restriction base="witsml:abstractInt"/>
669        </xsd:simpleType>
670        <!--                                                         -->
671        <xsd:simpleType name="beaufortScaleIntegerCode" final="#all">
672                <xsd:annotation>
673                        <xsd:documentation>An estimate wind strength based on the Beaufort Wind Scale.
674                        Values range from 0 (calm) to 12 (hurricane). </xsd:documentation>
675                </xsd:annotation>
676                <xsd:restriction base="witsml:abstractShort">
677                        <xsd:minInclusive value="0"/>
678                        <xsd:maxInclusive value="12"/>
679                </xsd:restriction>
680        </xsd:simpleType>
681        <!--                                                         -->
682        <xsd:simpleType name="pumpActionIntegerCode" final="#all">
683                <xsd:annotation>
684                        <xsd:documentation>Pump Action: 1 = Single acting, 2 = double acting.</xsd:documentation>
685                </xsd:annotation>
686                <xsd:restriction base="witsml:abstractShort">
687                        <xsd:minInclusive value="1"/>
688                        <xsd:maxInclusive value="2"/>
689                </xsd:restriction>
690        </xsd:simpleType>
691        <!--                                                         -->
692        <xsd:simpleType name="iadcIntegerCode" final="#all">
693                <xsd:annotation>
694                        <xsd:documentation>IADC codes: 0 to 8.</xsd:documentation>
695                </xsd:annotation>
696                <xsd:restriction base="witsml:abstractShort">
697                        <xsd:minInclusive value="0"/>
698                        <xsd:maxInclusive value="8"/>
699                </xsd:restriction>
700        </xsd:simpleType>
701        <!--                                                         -->
702        <xsd:simpleType name="levelIntegerCode" final="#all">
703                <xsd:annotation>
704                        <xsd:documentation>Integer level code from 1 through 5.</xsd:documentation>
705                </xsd:annotation>
706                <xsd:restriction base="witsml:abstractShort">
707                        <xsd:minInclusive value="0"/>
708                        <xsd:maxInclusive value="8"/>
709                </xsd:restriction>
710        </xsd:simpleType>
711        <!--                                                         -->
712        <!-- ========== REMAINING V1.2 TYPES  ============ -->
713        <!--                                                         -->
714        <xsd:complexType name="cost">
715                <xsd:simpleContent>
716                        <xsd:extension base="witsml:abstractDouble">
717                                <xsd:attribute name="currency" type="witsml:kindString" use="optional"/>
718                        </xsd:extension>
719                </xsd:simpleContent>
720        </xsd:complexType>
721        <!--                                                         -->
722        <xsd:complexType name="indexedObject">
723                <xsd:simpleContent>
724                        <xsd:extension base="witsml:abstractTypeEnum">
725                                <xsd:attribute name="index" type="witsml:positiveCount" use="required">
726                                        <xsd:annotation>
727                                                <xsd:documentation>Indexes things with the same name.
728                                                That is the first one, the second one, etc.</xsd:documentation>
729                                        </xsd:annotation>
730                                </xsd:attribute>
731                                <xsd:attribute name="name" type="witsml:kindString" use="optional"/>
732                                <xsd:attribute name="uom" type="witsml:uomString" use="optional"/>
733                                <xsd:attribute name="description" type="witsml:descriptionString" use="optional"/>
734                        </xsd:extension>
735                </xsd:simpleContent>
736        </xsd:complexType>
737        <!--                                                         -->
738        <xsd:simpleType name="str2">
739                <xsd:restriction base="witsml:abstractString">
740                        <xsd:maxLength value="2"/>
741                </xsd:restriction>
742        </xsd:simpleType>
743        <!--                                                         -->
744        <xsd:simpleType name="str16">
745                <xsd:restriction base="witsml:abstractString">
746                        <xsd:maxLength value="16"/>
747                </xsd:restriction>
748        </xsd:simpleType>
749        <!--                                                         -->
750        <xsd:simpleType name="str32">
751                <xsd:restriction base="witsml:abstractString">
752                        <xsd:maxLength value="32"/>
753                </xsd:restriction>
754        </xsd:simpleType>
755        <!--                                                         -->
756</xsd:schema>
Note: See TracBrowser for help on using the browser.