Completions Data Schema Overview

Version 1.0

This document contains the following sections:

Version 1.0 represents a new object.

The schemas are defined and viewed as W3C XML Schema files however a spreadsheet which summarizes the content is available.

This overview is non-normative and is not part of the standard.

Introduction

The Completion data-object is an XML specification for describing a well completion throughout its whole history. With a standardized description, the completion data can be accurately, reliably, and consistently exchanged between the many software applications used to plan, manage, and record work on a completion over the life of a well.

The Completion data-object is officially part of the Energistics WITSML data exchange specification (which defines wells) but has been designed to also work with Energistics PRODML (production) and RESQML (earth modeling/reservoir) data exchange specifications. Note that specific production and reservoir domain requirements have not been addressed in this first release, but are expected to be added in later releases.

Component schemas are XML schemas, but these schemas do not represent complete data objects and do not contain global elements. A component schema may be used by more than one data object schema. All component schemas are prefixed with (cs_). Each component schema file generally defines one type that has the same name as the file name.

An attribute group file (attgrp_uid.xsd) is used to define a unique identifier (uid) attribute for all recurring container elements. A container element is an element that contains other elements. The uid attribute is optional but is required within the context of a WITSML server. This is the equivalent of a RDBMS system generated primary key.

Low level simplistic types are defined in the following files. Each file defines many types. Each component schema file must directly or indirectly include file typ_dataTypesWitsml.xsd (or typ_dataTypes.xsd). If a component schema includes another component schema then it will be indirectly including typ_dataTypesWitsml.xsd.

File typ_catalog.xsd file contains enumerations that are considered to be relatively static and should not require frequent changes. However for some data the list of recognized values may change relatively frequently. For this type of data the values are enumerated in file enumValues.xml and a non-normative spreadsheet of this content is in file enumValues_spreadsheet.xls.

The unit of measure conversion information is defined in file witsmlUnitDict.xml. Abbreviations used within the WITSML schemas are documented here.

Data object schema design:

Since all XML documents can only have one root level element and there are situations where it is necessary to send multiple occurrences of a data object in a single XML document (e.g.; multiple wellbores in a well), a pluralized version of the data object name was established as the schema root element. That is, the object name followed by an "S" (e.g.; wells, wellbores, etc.). In some cases, this leads to incorrect pluralization (e.g., trajectorys), but is required to order to meet the requirements of the Completions API which generates root tag names based on the data object name. One component schema is included in all plural data object schemas:

The unique identifiers (uid) for data objects are always defined as attributes at the singular data object name level.

Naming convention in schemas:

A Completions type can be one of four kinds; a definition only with possibly a restricted size specified, a definition with enumerated values that are permitted, a reference to a component schema or a reference to an element group schema. While not really a type, the element group schemas allow the same elements to be used in multiple different contexts. In order, to help identify which type is being referenced, the following naming convention is used.

Wells and Wellbores

Completions has adopted the following definitions:

The definition of wellbore is intended to allow it to represent one and only one sidetrack or initial borehole. This assumes that only one sidetrack can have a particular bottomhole point. The wellbore may partially or completely overlap other sidetracks but it would not represent them.

For data bases that only contain wells, the name of the well generally contains knowledge of a specific sidetrack that is represented by that well. Information which is common to all sidetracks must be copied to each sidetrack well. Information from other sidetracks may also be redundantly copied to the sidetrack well. That is, the sidetrack well generally represents information from bottomhole to surface. In the WITSML view, the common data maps to a well and the sidetrack information maps to a wellbore. Data from other sidetracks may or may not be redundantly copied to a wellbore. Information about a borehole maps to a wellbore when that information is located using measured depths from the surface.

Completions Data Objects:

The Completions object includes the following data objects:

downholeComponent

wellCMLedger

wellboreCompletion

wellCompletion

Schema Variants

In addition to the normative schemas defined here, Completions generates schema variant for use in the API. The following variants are mechanically derived from the normative schemas.

Completions Schemas, XML Documents, and Stylesheets:

The WITSML standard includes the following data object schemas, component schemas and element group schemas:

XMLs can be viewed in Internet Explorer 9 by changing Compatibility View Settings.

downholeComponent data object

  Schemas   Links to Documents
  XSD
  Schema
 obj_downholeComponent.xsd XSD
      grp_downholeComponent.xsd XSD
           cs_downholeString.xsd XSD
                grp_downholeString.xsd XSD
                     cs_stringEquipmentSet.xsd XSD
                          cs_stringEquipment.xsd XSD
                               cs_eventInfo.xsd XSD
                                    cs_eventRefInfo.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               grp_stringEquipment.xsd XSD
                                    cs_refContainer.xsd XSD
                                    cs_equipmentConnection.xsd XSD
                                    cs_assembly.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_commonData.xsd XSD
                                    cs_extensionAny.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_customData.xsd XSD
                     cs_stringAccessory.xsd XSD
                          cs_stringEquipment.xsd XSD
                               cs_eventInfo.xsd XSD
                                    cs_eventRefInfo.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               grp_stringEquipment.xsd XSD
                                    cs_refContainer.xsd XSD
                                    cs_equipmentConnection.xsd XSD
                                    cs_assembly.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_commonData.xsd XSD
                                    cs_extensionAny.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_customData.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_boreholeStringSet.xsd XSD
                cs_boreholeString.xsd XSD
                     cs_borehole.xsd XSD
                          cs_eventInfo.xsd XSD
                               cs_eventRefInfo.xsd XSD
                               cs_extensionNameValue.xsd XSD
                          cs_extensionNameValue.xsd XSD
                     cs_geologyFeature.xsd XSD
                          cs_extensionNameValue.xsd XSD
                     cs_stringAccessory.xsd XSD
                          cs_stringEquipment.xsd XSD
                               cs_eventInfo.xsd XSD
                                    cs_eventRefInfo.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               grp_stringEquipment.xsd XSD
                                    cs_refContainer.xsd XSD
           nbsp;                         cs_equipmentConnection.xsd XSD
                                    cs_assembly.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_commonData.xsd XSD
                                    cs_extensionAny.xsd XSD
                                    cs_extensionNameValue.xsd XSD
                               cs_customData.xsd XSD
           cs_downholeStringSet.xsd XSD
                cs_downholeString.xsd XSD
                     grp_downholeString.xsd XSD
                          cs_stringEquipmentSet.xsd XSD
                               cs_stringEquipment.xsd XSD
                                    cs_eventInfo.xsd XSD
                                    grp_stringEquipment.xsd XSD
                                    cs_commonData.xsd XSD
                                    cs_customData.xsd XSD
                          cs_stringAccessory.xsd XSD
                               cs_stringEquipment.xsd XSD
                                    cs_eventInfo.xsd XSD
                                    grp_stringEquipment.xsd XSD
                                    cs_commonData.xsd XSD
                                    cs_customData.xsd XSD
                     cs_extensionAny.xsd XSD
                     cs_extensionNameValue.xsd XSD
           cs_equipmentSet.xsd XSD
                cs_equipment.xsd XSD
                     grp_equipmentProperty.xsd XSD
                     cs_extPropNameValue.xsd XSD
                     cs_perfSlot.xsd XSD
                          cs_extensionNameValue.xsd XSD
                     cs_perfHole.xsd XSD
                          cs_extensionNameValue.xsd XSD
                     cs_extensionAny.xsd XSD
                     cs_extensionNameValue.xsd XSD
           cs_perforationSets.xsd XSD
                cs_perforationSet.xsd XSD
                     cs_eventInfo.xsd XSD
                          cs_eventRefInfo.xsd XSD
                          cs_extensionNameValue.xsd XSD
      cs_commonData.xsd XSD
           cs_extensionAny.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_customData.xsd XSD


wellCMLedger data object

  Schemas   Links to Documents
  XSD
  Schema
 obj_wellCMLedger.xsd XSD
      cs_eventExtension.xsd XSD
           cs_cementExtension.xsd XSD
                cs_extensionNameValue.xsd XSD
                cs_extensionAny.xsd XSD
           cs_cleanFillExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_directionalSurveyExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_lostCirculationExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_BHPExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_acidizefracExtension.xsd XSD
                cs_extensionNameValue.xsd XSD
                cs_extensionAny.xsd XSD
           cs_jobExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_pressureTestExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_waitingOnExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_perforatingExtension.xsd XSD
                cs_perforating.xsd XSD
                     cs_extensionNameValue.xsd XSD
                cs_extensionAny.xsd XSD
           cs_fluidReportExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_downholeExtension.xsd XSD
                cs_extensionAny.xsd XSD
                cs_extensionNameValue.xsd XSD
      cs_dayCost.xsd XSD
           cs_nameTag.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_participant.xsd XSD
           cs_memberObject.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_extensionNameValue.xsd XSD
      cs_commonData.xsd XSD
           cs_extensionAny.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_customData.xsd XSD


wellCompletion data object

  Schemas   Links to Documents
  XSD
  Schema
 obj_wellCompletion.xsd XSD
      grp_wellCompletion.xsd XSD
      cs_commonData.xsd XSD
           cs_extensionAny.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_customData.xsd XSD


wellboreCompletion data object

  Schemas   Links to Documents
  XSD
  Schema
 obj_wellboreCompletion.xsd XSD
      grp_wellboreCompletion.xsd XSD
           cs_eventInfo.xsd XSD
                cs_eventRefInfo.xsd XSD
                cs_extensionNameValue.xsd XSD
           cs_contactIntervalSet.xsd XSD
                cs_gravelPackInterval.xsd XSD
                     grp_contactInterval.xsd XSD
                          cs_intervalStatusHistory.xsd XSD
                          cs_eventInfo.xsd XSD
                               cs_eventRefInfo.xsd XSD
                               cs_extensionNameValue.xsd XSD
                          cs_extensionNameValue.xsd XSD
                cs_openHoleInterval.xsd XSD
                     grp_contactInterval.xsd XSD
                          cs_intervalStatusHistory.xsd XSD
                          cs_eventInfo.xsd XSD
                               cs_eventRefInfo.xsd XSD
                               cs_extensionNameValue.xsd XSD
                          cs_extensionNameValue.xsd XSD
                cs_perforationSetInterval.xsd XSD
                     grp_perforationInterval.xsd XSD
                          cs_perforationStatusHistory.xsd XSD
                          cs_eventInfo.xsd XSD
                               cs_eventRefInfo.xsd XSD
                               cs_extensionNameValue.xsd XSD
                          cs_extensionNameValue.xsd XSD
                cs_slotsInterval.xsd XSD
                     grp_contactInterval.xsd XSD
                          cs_intervalStatusHistory.xsd XSD
                          cs_eventInfo.xsd XSD
                               cs_eventRefInfo.xsd XSD
                               cs_extensionNameValue.xsd XSD
                          cs_extensionNameValue.xsd XSD
      cs_commonData.xsd XSD
           cs_extensionAny.xsd XSD
           cs_extensionNameValue.xsd XSD
      cs_customData.xsd XSD