NMBGMR Draft Geologic Data Model - v. 1.0.3
POINTS: Well Data

revised: 02-Mar-2012

Contents:

Overview

Well spots are easy to represent as points on a map. However, a large amount of data can be associated with each well. Most of this data is best suited to input, query, and display via some kind of form. Data entry might need to occur before the precise location of a well has been established or conversely, the location of a well may be known before other attributes are avaliable. To that end, we have developed a well schema that allows for population of well attributes without an associated well spot. These attributes are related to each well using two GUIDs and 1:1 relationships: A 'WellPtGUID' is generated by the Well_point feature class and is the basis of a 1:1 relationship with a Well_Header table that stores basic identification attributes for wells. The Well_Header table generates a 'WellDataID' (GUID) that is used as the basis of 1:M relationships between the 'Well_Header' table and all other associated data. Using two GUIDs this way allows for dissconnected editing of both well spots and tabular attributes when that is appropriate, but also allows well attributes to be shown once the 1:1 relationship between the well spot and the header table has been established.

One aspect of well data that is difficult to manage is that there may be multiple datasets related to the same parameter. Sometimes, as with lithologic picks based on the interpretations of individual geologists, data from different sources can be contradictory. Because of this and because data can come from a variety of sources, we chose to store data as 'record sets'. Each recordset generates a unique GUID (RecordsetID) that relates associated data. Likewise, sample sets within a record set also generate a unique GUID (SamplSetID) so that multiple sample datasets from the same source (a record set), can be stored.

Our approach has resulted in less duplication of effort for our staff who handle a wide variety of well-related data collected from the same wells (e.g. geothermal data collected from petroleum exploration wells). Using a personal geodatabase to store our well data has allowed for the creation of Access data entry and querying forms that make using and entering data much easier than it is in a purely GIS environment. The only significant problem so far that we have encountered so far is that ArcServer doesn't work with 1:M relationship classes, which we rely on extensively.

It would be possible to use just the well-related part of our datamodel for those who already have a schema that suits their needs for other geologic data. The only portions of our larger geodatabase schema that are required by the Wells feature dataset are the 'Lithology' and 'Sources' tables and the coded value domains associated with any of the tables used.

Feature Class: Well_point

This 3-D point feature class represents wells of all types. The elevation of the point will be the elevation of the depth datum. Well Header information is related via the WellPtGUID field. Additional data about wells, in tables below, should be in a linked external table via the WellDataID field generated by the Well_header to Well_Records using the RecordSetID. The position of the well bore in 3-D can be stored in the Well_bore feature class and can be made from points in the Well XYZ feature class.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
WellPtGUID     GlobalID [auto]   FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} ArcGIS-maintained object identifier (primary key) Basis of 1:1 relationship between well feature and well header table.
WellDataID "   GUID   [null] TRUE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} Basis of relationships between well feature and header, location, and well records tables. Populated via an update query after a Well_Header record has been created.
Well_ID " 50 String variable [null] TRUE 30-035-00013, EB-34 Well identifier: Use API (if exists) or well name & number. To be used only for display, not for joins/relates.
FGDC_code " 16 String variable [null] TRUE 30.3.12 FGDC geologic symbol reference number for well-spot symbol.
Import_ID "   Integer variable [null] TRUE   Import identifier: Use Object ID from external database for data import.
DsplyScale DisplayScale   Long Integer CVD 24000 TRUE see: DisplayScale Denominator of display scale: display feature at scales larger than number specified (=< denominator). Zero indicates data that should never be displayed.

FeatureClass: Well_BoreLine

This m and z-enabled line feature class stores a representation in 3-D of the well bore. It can either be constructed from Well_XYZ downhole survey data, by connecting top and bottom well locations (if known), or by assuming a vertical bore and projecting the bottom hole position from the total depth. M-enabing well bore features allows determination of 3-D position from depth using routing funtions in the GIS. The zero depth position in 3-D will be the Depth Datum position for the well.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
WellDataID "   GUID variable [null] FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} Foreign Key that relates 1:1 to WellDataIDs for Well_Header records. May also be used for basis of 1:1 relationship with Well_point features.
BorePositn BorePosition 16 String CVD
BorePosition
[null] TRUE [XYZ] data, [straight] line from 0-TD points, assumed [vertical] How the well bore position was determined
Comments " 255 String variable [null] TRUE    

Topology

Table: Well_Header

This table stores header data common to most wells. The Header table should be joined 1:1 with the Well_point feature class via the WellPtGUID. This table generates a WellDataID that is the top-level identifier for all well data. Using this identifier allows well data to be entered with or without the existence of a Well_point.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
WellDataID "   GUID variable [null] FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} Primary Key that relates Well_Header data to Well_Location and Well_Records. Should be used to populate the WellDataID field in for Well_point features.
WellPtGUID "   GUID variable [null] FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} Foreign Key that relates Header records to Well GUIDs for Well_point features. 1:1 relationship with well spots.
API " 12 String variable [null] TRUE 30-035-00013 Well API number (unique ID)
(does not include suffix for multiple completions). Format is: statecode-countycode-well#). Field may contain multiple NULLs for wells without API.
WellClass " 16 String CVD [null] TRUE unspecified, petroleum, mineral, water, geothermal, coal, strat-test, other Current class of well
WellType " 16 String CVD [null] TRUE oil, gas, injection, disposal, monitoring, domestic, municipal, supply, multi-use, scientific, mining, storage, other Current Type of well of specified class.
WellOrient WellOrientation 16 String CVD [null] TRUE vertical, directional, horizontal Attitude of well bore.
CurWellNam CurrentWellName 50 String variable [null] TRUE Navajo C Current name of well.
CurWellNum CurrentWellNumber 50 String variable [null] TRUE 2-L Current number of well
CurStatus CurrentStatus 16 String CVD [null] TRUE WO, PA, DA, TA Current status of well.
CurOperatr CurrentOperator 50 String variable [null] TRUE Yates Petroleum Operator of well.
CurOwner CurrentOwner 50 String variable [null] TRUE Joe Owner Owner of well.
TotalDepth "   Single variable [null] TRUE 1000 Most current total depth of well
Well_TVD "   Single variable [null] TRUE 1000 Total Vertical Depth of well at TD.
Fm_TD " 50 String variable [null] TRUE Dakota Sandstone Fm at base of well
Age_TD " 24 String CVD
[Period
]
[null] TRUE Quaternary, Neogene, Paleogene, Tertairy, Cretaceous, Jurassic, Triassic, Permian, Carboniferous, Devonian, Silurian, Ordovician, Cambrian, etc. Age of rocks (geologic Period) at base of well
SpudDate "   date variable [null] TRUE   Date drilling started
ComplDate CompletionDate   date variable [null] TRUE   Date most-recent drilling completed
PlugDate "   date variable [null] TRUE   Date well was plugged
PlugBack PlugBackDepth   Single variable [null] TRUE 1234 Depth well was plugged back to.
BridgePlug   50 String variable [null] TRUE 1234, 4567 Comma separated list of Depth of well bridge plug(s)
ScoutTickt ScoutTicket   short integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Scout Ticket made?
DwnHoleSur DownholeSurvey   short integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Downhole survey done? Data in related Well_XYZ table.
GeolLog GeologistsLog   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Geologist logged well? Data in related Well_Log table.
Geophyslog GeophysicalLog   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Geophysical log made? Data in related Well_Log table.
GthrmExist GeothermalExists   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Geothermal data exists? Data in related GT_... tables.
PetroData PetroleumData   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Is petroleum data available? Data in related Well_PetroDat table
CoreExists "   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Core samples exist? Data in related Well_Samples table.
Cuttings CuttingsExist   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Cuttings exist? Data in related Well_Samples table.
SampleData SampleDataExists   Short Integer boolean [null] TRUE 1=yes/TRUE, 0=no/FALSE Is Sample data available? Data in related Well_Samples table
Comments " 255 String variable [null] TRUE description Comments about this particular well.
Import_ID " 50 String variable [null] TRUE   Import identifier: Use Object ID from external database for data import.
Import_DB  " 50 String variable [null] TRUE   Imported database name

Table: Well_Location

This table stores coordinates of well locations. Downhole XYZ data should be stored in the Well_XYZ feature class which would include the locations stored in this table at zero depth. The location data in this table should be used to create well features in the Well_point feature class. This table can then be joined to the Well_point feature class via the Well_Records intermediate table to provide tabular output of coordinates for export to other applications.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
WellDataID     GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well GUID Identifier (foreign key 1:1 relationship with Well_Header).
Well_ID " 50 String variable [null] TRUE 30-035-00013, EB-34 Well identifier: Use API (if exists) or well name & number. To be used only for display, not for joins/relates.
Import_ID "   Integer variable [null] TRUE   Import identifier: Use Object ID or ID from external database for data import and to allow join to populate WellDataID field.
Township "   Single variable [null] TRUE 20, 21.5 Township (some 1/2 Townships)
NorS_TDir NorS_TownshipDir 1 String CVD
NS
[null] TRUE N, S Township north or south
Range "   Single variable [null] TRUE 20, 21.5 Range (some 1/2 Ranges)
EorW_RDir EorW_RangeDir 1 String variable [null] TRUE E, W Range east or west
Sectn Section   short integer RangeDomain [null] TRUE 1 through 36 Section
SectnPart SectionPart 20 String variable [null] TRUE N/2 NE NW SE Portion of section
(typically quarter-quarter)
UnitLetter   2 String CVD
UnitLetter
[null] TRUE A through P; plus 1-16 for irregular sections Quarter-quarter section ID
UTM_zone " 3 String CVD unspecified TRUE 13S, 12S, etc. UTM zone (for UTM coordinates)
State " 2 String variable [null] TRUE NM, TX, CO, AZ, UT, OK, MX US State Abbreviation
County " 50 String CVD
NM_County
[null] TRUE San Juan County
Basin " 50 String variable [null] TRUE San Juan Geologic Basin
Footage_NS "   Single variable [null] TRUE   Footage from north or south section line
NorS_FDir NorS_FootageDir 1 String CVD [null] TRUE N, S Whether footage is measured north or south
Footage_EW "   Single variable [null] TRUE   footage from east or west section line
EorW_FDir EorW_FootageDir 1 String CVD [null] TRUE E, W Whether footage is measured east or west
Lat_deg Latitude_deg   SmallInt         Degrees of Latitude (see SourceDatum)
Lat_min Latitude_min   SmallInt         Minutes of Latitude (see SourceDatum)
Lat_sec Latitude_sec   Single         Seconds of Latitude (see SourceDatum)
Long_deg Longitude_deg   SmallInt         Degrees of Longitude (see SourceDatum)
Long_min Longitude_min   SmallInt         Minutes of Longitude (see SourceDatum)
Long_sec Longitude_sec   Single         Seconds of Longitude (see SourceDatum)
Lat_dd27 Latitude_ddNAD27   Double         Latitude in decimal degrees NAD27
Long_dd27 Longitude_ddNAD27   Double         Longitude in decimal degrees NAD27
Lat_dd83 Latitude_ddNAD27   Double         Latitude in decimal degrees NAD83
Long_dd83 Longitude_ddNAD27   Double         Longitude in decimal degrees NAD83
SourceID " 128 String variable [null] TRUE unknown; unspecified; Smith, 2006b [variable] Source ID for bibliographic information about this record.
SourceDatum " 24 String CVD
HorizDatum
unspecified TRUE NAD27, NAD83, WGS84  
SourceUnits " 16 String CVD
XY_Units
unspecified TRUE UTM-m, UTM-ft, DD, etc.  
LocAccType LocAccuracyType 50 String variable [null] TRUE precision gps, handheld gps, good topo, poor topo, planimetric, survey, map and compass, triangulation, distinctive feature Accuracy of position.
LocAccMeas LocAccuracyMeasure 16 String variable [null] TRUE EPE(m), PDOP Criteria for deterimining accuracy of position.
LocAccVal LocAccuracyValue   Single variable [null] TRUE 15 Numeric measurement of location accuracy
Duplicated "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Is location for this well duplicated?
Exclude "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Exclude location when creating Well_point features.
Comments " 255 String variable [null] TRUE    

Table: Well_Records

This is a lookup table for relating WellDataIDs generated by the Well_Header table to recordset identifiers created by this table for particular wells. This is accomplished via a composite 1:many relationship (or join) between Well_Header and Well_Records as well as composite relationships between the Well_Records table and other tables within a given recordset.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordsetID   GlobalID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (Primary key for 1:many relationships to data tables)
WellDataID "   GUID variable [null] FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} Foreign Key that relates Recordsets to WellDataIDs for Well_Header records. (Many:1).
RecrdClass RecordClass 16 String CVD
WellRecordClass
unspecified FALSE [drilling] actions, [sample] actions, [picks] made, other [data] aquired, [log] aquired, [test] done, [geothermal] data, [survey] done, [production] data

Class of this recordset for this well

Alternate attributes:

[name] change actions

SourceID " 128 String variable [null] TRUE unknown; unspecified; Smith, 2006b [variable] Source ID for bibliographic information about this record.
ActionDate "   Date   [null] TRUE 11/25/2010 Date action specified by record took place (e.g. date of log or when P&A).
WellName " 50 String variable [null] TRUE Navajo C Name of well at time of recordset.
WellNumber " 50 String variable [null] TRUE 2-L Number of well at time of recordset.
API_suffix " 4 String variable [null] TRUE 0001, 0002, A, B, C, etc. Suffix to API number -- used for multiple completions. Details should be stored in Well_History table.
EnteredBy " 4 String variable [null] TRUE ASR Initials of person entering data
EntryDate "   Date   [null] TRUE 9/21/2010 Date record was entered
Comments " 255 String variable [null] TRUE description Comments about this particular recordset.

Table: Well_Bore

This table contains parameters regarding drilling bits, fluids used during drilling, and the resulting bore of wells. Data in this table are part of a recordset.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
DrillMethd DrillMethod 16 String CVD
WellDrillMethod
[null] TRUE core, mud-rotary, air-rotary, reverse circ, wire rig, cable tool Drilling method.
BoreDia "   Single variable [null] TRUE 6 diameter of well bore BoreUnits
BoreUnits " 16 String CVD
LengthUnits
[null] TRUE cm, inches, feet, etc. length units of diameter
DrillFluid " 16 String CVD
WellDrillingFluid
[null] TRUE unspecified, saltwater, mud, diesel, other Drilling fluid used in well.
FldSalinity FluidSalinity   Single variable [null] TRUE 123.456 Drilling fluid salinity.
FldRstvity FluidResistivity   Single variable [null] TRUE 123.456 Drilling fluid resistivity.
Fluid_pH "   Single variable [null] TRUE 4.567 Drilling fluid pH.
FldDensity FluidDensity   Single variable [null] TRUE 1.234 Drilling fluid density.
FldLevel FluidLevel   Single variable [null] TRUE 678.9 Drilling fluid level.
FldViscsty FluidViscosity   Single variable [null] TRUE 25.8 Drilling fluid viscosity.
FluidLoss   50 String variable [null] TRUE lost circulation Notes regarding drilling fluid loss.
Comments " 255 String variable [null] TRUE    

Table: Well_Casing

This table contains parameters regarding the casing of wells. Data in this table are part of a recordset.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
Depth "   Single variable [null] TRUE   Depth of casing
CasingType " 50 String variable [null] TRUE   Well casing type.
CasingMtrl CasingMaterial 50 String variable [null] TRUE   Well casing material
CasingDiam CasingDiameter   Single variable [null] TRUE 6 Diameter of casing (ID or OD specified in CasDiaType).
CasDiaType CasingDiameterType 2 String CVD
CasingDiameterType
OD TRUE ID, OD inside or outside diameter
CasDiaUnit CasingDiamUnits 16 String CVD
LengthUnits
[null] TRUE cm, inches, feet, etc. length units of diameter
CasDpthDrl CasingDepthDriller   Single variable [null] TRUE 67 Depth of casing according to driller estimate.
CasDpthLog CasingDepthLogger   Single variable [null] TRUE 67.2345 Depth of casing according to logging tool.
CasingWgt CasingWeight   Single variable [null] TRUE 67.2345 Weight of casing per unit length (see Well Z_datums).
CasngWgtUn CasingWeightUnits 8 String CVD
WeightPerLength
[null] TRUE lbs/ft, kg/m Weight of casing per unit length (see Well Z_datums).
CasngThick CasingThickness   Single variable [null] TRUE 67.2345 Thickness of casing.
CasngThkUn CasingThicknessUnits 16 String CVD
LengthUnits
[null] TRUE ft, m, inches, cm, etc. Thickness units.
Sax "   Integer variable [null] TRUE   Number of sacks of cement used
CmntRcd CementRecord 25 String variable [null] TRUE    
Comments " 255 String variable [null] TRUE    

Table: Well_XYZ

This table stores 3-D downhole survey coordinates. For wells with only top and bottom locations in three dimensions, there will only be two records. This feature class can be used to create a 3-D polyline of the well bore. The XY datum and Z datum are stored as part of the same recordset.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
LocType LocationType 16 String CVD [null] TRUE survey, TopPay, Prod  
X_coord "   Double variable 0 TRUE   X-coordinate
Y_coord "   Double variable 0 TRUE   Y-coordinate
Z_coord "   Single variable 0 TRUE   Z-coordinate
MeasrDepth MeasuredDepth   Single variable [null] TRUE 0 for depth datum position Depth measured down hole
TVD TotalVerticalDepth   Single variable [null] TRUE   Total vertical depth from surface
PB PlugBackDepth   Single variable [null] TRUE   Plug back depth
PBV PlugBackVertical   Single variable [null] TRUE   Plug back vertical depth below surface
Township "   Single variable [null] TRUE 20, 21.5 Township (some 1/2 Townships)
NorS_TDir NorS_TownshipDir 1 String CVD
NS
[null] TRUE N, S Township north or south
Range "   Single variable [null] TRUE 20, 21.5 Range (some 1/2 Ranges)
EorW_RDir EorW_RangeDir 1 String CVD
EW
[null] TRUE E, W Range east or west
Sectn Section   short integer RangeDomain [null] TRUE 1 through 36 Section
SectnPart SectionPart 20 String variable [null] TRUE N/2 NE NW SE Portion of section
(typically quarter-quarter)
UnitLetter   2 String CVD
UnitLetter
[null] TRUE A through P; plus 1-16 for irregular sections Quarter-quarter section ID
Footage_NS "   Single variable [null] TRUE   Footage from N or S section line (specified below)
NorS_Fdir NorS_FootageDir 1 String CVD
NS
[null] TRUE N, S Footage is measured North or South from section lines
Footage_EW "   Single variable [null] TRUE   Footage from N or S section line (specified below)
EorW_Fdir EorW_FootageDir 1 String CVD
EW
[null] TRUE E, W Footage is measured East or West from section lines

Table: Well_XY_Datum

This table stores datum recordset information for the XY coordinate system and attributes regarding accuracy. Currently only applicable to the Well_XYZ down-hole coordinate data. The Well_Location table has it's own datum attributes.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key 1:1 relationship with Well_Records table -- one datum per recordset)
XY_datum " 16 String CVD
HorizDatum
unspecified TRUE NAD27, NAD83, WGS84  
XY_units " 16 String CVD
XY_units
feet TRUE dms, dd, UTM_ft UTM_m  
LocSource LocationSource 50 String variable [null] TRUE PRRC, GES, operator, contractor source of location data
LocAccType LocationAccuracyType 50 String variable [null] TRUE precision gps, handheld gps, good topo, poor topo, planimetric, survey, map and compass, triangulation, distinctive feature Accuracy of position.
LocAccMeas LocationAccuracyMeasure 16 String variable [null] TRUE EPE(m), PDOP Criteria for deterimining accuracy of position.
LocAccVal LocationAccuracyValue   Single variable [null] TRUE 15 Numeric measurement of location accuracy
Comments " 255 String variable [null] TRUE    

Table: Well_Z_Datum

This table stores datum recordset information for the Z coordinate system, depth coordinate system, and attributes regarding accuracy. It applies to all records in a recordset that specify depth. If multiple depth datums are used in a primary data source, that data must be split into multiple recordsets.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key 1:1 relationship with Well_Records table -- one datum per recordset)
Elev_GL Elev_GroundLevel   Single variable [null] TRUE 5660 Elevation of well Ground Level
Elev_DF Elev_DrillerFloor   Single variable [null] TRUE 5650 Elevation of well Driller Floor
Elev_KB Elev_KelleyBushing   Single variable [null] TRUE 5670 Elevation of well collar (AKA Kelley Bushing)
Elev_unspc Elev_unspecified   Single variable [null] TRUE 5670 Elevation - probably ground level, but unspecified.
DatumElev DatumElevation   Single variable [null] TRUE 5670 Datum Elevation for depth measurements -- value copied from the elevation type specified by the DepthDatum field.
DepthDatum " 3 String CVD
WellDepthDatum
[null] TRUE GL, DF, KB, TVD Datum for depth in well
Depth_units " 16 String CVD
LengthUnits
feet TRUE m, ft, unspecified, etc.  
Z_datum " 24 String CVD
VertDatum
unspecified TRUE NAVD29, NAVD88  
Z_units " 16 String CVD
LengthUnits
feet TRUE m, ft, unspecified, etc.  
ElevSource ElevationSource 50 String variable [null] TRUE PRRC, GES, operator, contractor source of location data
ElvAccType ElevationAccuracyType 50 String variable [null] TRUE precision gps, handheld gps, good topo, poor topo, planimetric, survey, map and compass, triangulation, distinctive feature Accuracy of position.
ElvAccMeas ElevationAccuracyMeasure 16 String variable [null] TRUE EPE(m), PDOP Criteria for deterimining accuracy of position.
ElvAccVal ElevationAccuracyValue   Single variable [null] TRUE 15 Numeric measurement of location accuracy
Comments " 255 String variable [null] TRUE    

Table: Well_LthStrat

This non-spatial table stores lithology picks. Each separate source of pick data is represented by a unique recordset. Duplicate picks from different sources are to be expected, but must be evaluated to determine the best pick and if a given pick should be excluded.

Surfaces of stratigraphic tops can be constructed from 3-D points via this method:

  1. Populate the GeoID field with a code for each stratigraphic unit of interest (i.e. 'Je' for Entrada).
  2. Join Well_LthStrat to Well_Z_Datum using RecrdSetID and subtract the Depth2top from DatumElev to get the Elev_Top (for vertical wells).
  3. Save edits, stop editing, and remove the join between Well_LthStrat and Well_Z_Datum.
  4. Join Well_LthStrat to Well_Records (use the 'join based on relationship class' option).
  5. Create a definition query for Well_LthStrat to restrict the data to a particular formation without 'excluded' values (e.g. [GeoID] = 'Je' and [Exclude] = 0). Export the results to a new table in the geodatabase (e.g. 'Je_picks'). Note that dbase tables will not work because they do not support GUIDs. Repeat for all units of interest.
  6. Join Well_points to the picks table(s) from step 4 -- choose to only keep matching results of the join (this is an 'inner join').
  7. Export the matching Well_points as tops points for each formation (e.g. Je_tops) to a new projected feature dataset (use Lambert conformal conic) with a defined vertical cooordinate system.
  8. Optional: Use the 3D analyst toolbar to convert these points into 3D point feature classes.
  9. Visualize the formation-top surface by adding the points to a terrain dataset (or create a dem). Terrains can be only be created in ArcCatalog within projected feature datasets. Either add 3D points from previous step or use the pick elevation field to define the z coordinates for the terrain.
  10. Flag any changes or fixes to be made using the 'CheckPick' boolean and/or comments, exclude the problem picks.
  11. You can join the 'Tops' points to original datasets to facilitate revisions.
  12. If the problem picks are due to typos, fix them. For newly interpreted picks, create a new recordset to store your new picks and cite yourself as the source.
  13. Reiterate until you are happy with the picks.
Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
LithClass " 50 String CVD
LithClass
[null] TRUE sedimentary, intrusive, volcanic, metamorphic, anthropogenic, water Class of lithologic unit
UnitBasis " 16 String CVD
UnitBasis
[null] TRUE Group, Formation, Member, Lithology, Age Basis of unit definition for this interval
UnitName " 128 String variable [null] TRUE Dakota Sandstone, Jackpile Member, sandstone, coal bed, etc. Name of lithologic unit
GeoID " 16 String variable [null] TRUE Jd, Kmv, Pa, etc. Standard abbreviation for stratigraphic unit. Basis of relationship with Lithology table.
WithinUnit " 16 String variable [null] TRUE Jd, Kmv, Pa, etc. Standard abbreviation for stratigraphic unit that record is within (mostly for sub-units within a given Formation).
Top_Qual Top_Qualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding Depth2Top value.
Depth2Top "   Single variable [null] TRUE   Top of depth interval
Top_TVD "   Single variable [null] TRUE   Total Vertical Depth of Top
Elev_Top "   Single variable [null] TRUE   Elevation of Top of depth interval (calculated)
Botm_Qual Bottom_Qualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding Depth2Bottom value.
Depth2Botm Depth2Bottom   Single variable [null] TRUE   Bottom of depth interval [leave NULL if only tops are recorded]
Bottom_TVD "   Single variable [null] TRUE   Total Vertical Depth of Bottom
Elev_Bot Elev_Bottom   Single variable [null] TRUE   Elevation of Bottom of depth interval (calculated)
DpthMethod DepthMethod 16 String CVD
ParamConfidence
[null] TRUE measured, calculated, estimated Method used to determine reported depth values.
PickConfid PickConfidence 16 String CVD
Confidence
[null] TRUE certain, probable, uncertain Confidence in stratigraphic pick.
Absent "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Is this pick absent in this well?
Overturned "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Is stratigraphy overturned?
Duplicated "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Is pick for this unit duplicated by another recordset?
Exclude "   Short Integer boolean 0 FALSE 1=yes/TRUE, 0=no/FALSE Exclude pick from further analysis?
CheckPick "   Short Integer boolean 0 FALSE 1=yes/TRUE, 0=no/FALSE Check this pick for errors?
Int_Notes IntervalNotes 255 String variable [null] TRUE description Comments about this particular interval.

Table: Well_History

This table stores information regarding the history of wells. These data include owner, operator, driller, recompletions, changes in status, etc.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key 1:1 relationship with RecrdSetID in Well_Records table -- one recordset per history change)
ActionClss ActionClass 16 String CVD
WellActionClass
unspecified FALSE completion, recompletion, log taken, samples taken Type of work done on well for this history record
WorkType " 16 String CVD
WellActionClass
unspecified FALSE WO, PA, DA, TA Type of work done on well for this history record
ActionDate "   Date   [null] TRUE   Date action was taken
SpudDate "   Date   [null] TRUE   Spud date
PlugBack "   Single   [null] TRUE   Depth to plug back
BridgePlug " 50 String variable [null] TRUE ?? Bridge Plug
Total Depth "   Single   [null] TRUE   Total depth of well.
Commodity " 16 String CVD
WellCommodity
unspecified FALSE oil, gas, oil-gas, geothermal, U, He, CO2, OtherGas, sulfur, water, brine, metals, mineral, salt, data Commodity of interest
Results " 16 String CVD
WellResults
unspecified FALSE dry-absent, show-present, reserves, production, success, failure Results of effort
LeaseID " 128 String variable [null] TRUE ?? Lease ID number
Operator " 50 String variable [null] TRUE Yates Petroleum Operator of well. Multiple operators will have separate records and RecordSetIDs.
Contractor " 50 String variable [null] TRUE Yates Petroleum Contractor that performed survey of well. Multiple contractors will have separate records.
Driller " 50 String String [null] TRUE Rodgers Drilling contractor.
Status " 16 String CVD
WellStatus
[null] TRUE WO, PA, DA, TA Status of well at date of recordset

Table: Well_PetroDat

This non-spatial table stores petroleum-specific data. Each source of data represents a unique recordset.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:many relationship with Well_Records table)
ProdFm ProductionFm 128 String variable [null] TRUE Dakota Formation name for production interval
Field_Pool " 128 String variable [null] TRUE Rattlesnake Field or pool name. Multiple pools will have separate records.
PrdFrmDpth ProductionFromDepth   Single variable [null] TRUE   Top of depth interval
PrdToDepth ProductionToDepth   Single variable [null] TRUE   Bottom of depth interval
Int_Notes IntervalNotes 255 String variable [null] TRUE description Comments about this particular interval.

Table: Well_LogData

This non-spatial table stores a record of what log data is available (Log Metadata). Each log represents a recordset. Digital logs would be stored in their native format.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
LogClass " 24 String CVD
LogClass
[null] TRUE lithologic, geophysical, caliper, view, engineering, chemical, orientation, location, other Class of log
LogType " 8 String variable [null] TRUE AVL, AMPS, etc. Code for log type -- need CVD
LogTitle " 255 String variable [null] TRUE "Resisitivity Log for the Yates La Mesa #2 Well" Title of log record.
LogDate "   Date variable [null] TRUE   Date log was taken.
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
FileNo "   Integer variable [null] TRUE 123456 Petroleum record file number
FileLoc FileLocation 50 String variable [null] TRUE Rm 127, box 12g, etc. physical location of log
Hotlink " 255 String variable [null] TRUE Hotlink URI Link to log.
Int_Notes IntervalNotes 255 String variable [null] TRUE description Comments about this particular interval.

Table: Well_LithLog

This non-spatial table stores lithologic log data for wells. Multiple lithology logs are separate recordsets.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
GeoID " 16 String variable undefined FALSE Jd basis of relationship with Lithology Details
Name " 128 String variable [null] TRUE Madera Group undifferentiated Name of lithologic unit.
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
LithClass " 50 String CVD
LithClass
[null] TRUE sedimentary, intrusive, volcanic, metamorphic, anthropogenic, water Class of lithologic unit
LithType " 50 String CVD
LithType
[null] TRUE

Sedimentary: siliciclastic, mixed, nonsiliciclastic

Volcanic: lava flow, dome, ash, volcaniclastic

Intrusive: plutonic, hypabyssal, dike, sill

Metamorphic: metasedimentary, metavolcanic, metaplutonic, unknown protolith

Anthropogenic: disturbed land, artificial fill, tailings, dump

Type of unit of specified class
IgneousCmp IgneousComposition 50 String CVD
IgneousComposition
[null] TRUE unknown, leucocratic, silicic, felsic, intermediate, mafic, ultramafic, [other - specify] Igneous composition (if applicable)
MMfacies MetamorphicFacies 50 String CVD
MetamorphicFacies
[null] TRUE unknown, zeolite, prehnite-pumpellyite, greenschist, amphibolite, granulite, blueschist, eclogite, hornfels, sanidinite Metatmorphic facies (if applicable)
Mineralogy " 255 String variable [null] TRUE mineral assemblage: e.g. Bt+Qtz+Kspar+musc; Cc; etc. Mineralogy (if applicable)
PrimLith PrimaryLithology 128 String variable [null] TRUE sand, gravel, limestone, rhyolite, granite, diorite, amphibolite, schist, gneiss, mudstone, shale, sandstone etc. Could use defined ontologies like NGMDB vocabularies. Primary lithology
SecondLith SecondaryLithology 128 String variable [null] TRUE minor- sand, gravel, limestone, rhyolite, granite, diorite, amphibolite, mudstone, shale, sandstone etc. Could use defined ontologies like NGMDB vocabularies. Secondary lithology
ShortDesc ShortUnitDescription 255 String variable [null] TRUE Concise unit description. Description of the unit throughout the map area.
UnitDesc UnitDescription 65535 TEXT variable [null] TRUE Unit description Description of the unit throughout the map area.
Texture " 255 String CVD
Texture
[null] TRUE angular, subangular, subrounded, rounded, well-rounded, clastic, glassy, ahphanitic, phaneritic, porphyritic, megacrystic, brecciated, mylonitic, etc. Provenance of unit
Color " 255 String variable [null] TRUE Munsell(?) color Color of unit.
GrainSize " 255 String variable [null] TRUE grain size: coarse, medium, fine, silt, clay, [or numeric: e.g. 1m clasts] Grainsize of unit.
Sorting " 255 String variable [null] TRUE well, moderate, poor, bimodal Degree of sorting of grains.
Cemntation Cementation 255 String variable [null] TRUE unspecified, none, silica, calcite, hematite, zeolite, etc. Cementation of unit.
Induration " 255 String CVD
Induration
[null] TRUE unspecified, well, moderate, poor, unconsolidated Induration of unit.
Bedding " 255 String variable [null] TRUE tabular, lenticular, laminated, etc. Bedding description
BedThkness BedThickness   Single variable [null] TRUE 12 Bed Thickness
ThickUnits ThicknessUnits 8 String CVD
LengthUnits
[null] TRUE cm, m, ft, etc. Bed thickness units
Protolith " 255 String variable [null] TRUE unspecified, pelite, sandstone, basalt, etc. Induration of unit.
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Table: Well_Samples

This table stores metadata about physical samples, sample data sets, or measurements taken from particular well intervals. Each record specifies a depth or depth interval and records the presence/absence of particular sample type or analyses. For sample sets, this table can record the range of depths for the sample set or measurement set. Data at specific depth within the sample set depth range, like porosity or temperature, is then stored in related tables.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
SamplSetID SampleSetID   GlobalID [auto]   FALSE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} ArcGIS-maintained object identifier (primary key) Basis of 1:1 relationship between Well_samples table and data tables.
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
SmpSetName SampleSetName 128 String variable [null] TRUE ABC_123-345 Sample set name
SamplClass SampleClass 24 CVD
WellSampleClass
variable [null] TRUE core, cuttings, water, oil, gas, data, other Class of sample
SampleType " 50 CVD
WellSampleType
variable [null] TRUE split, pulp, composite, datapoint, dataset, etc. Sample type of specified class
SampleFm " 50 String variable [null] TRUE San Andres, Dakota Sandstone, etc. Formation pick of the sample. Note: this may conflict with later changes in stratigraphic picks.
SampleLoc SampleLocation 128 String variable [null] TRUE Organization Name, Building Name, Box ID Where sample is located.
SampleDate "   Date variable [null] TRUE   Date sample taken
From_Depth "   Single variable [null] TRUE   Top of depth interval
To_Depth "   Single variable [null] TRUE   Bottom of depth interval [leave NULL if only tops are recorded]
From_Elev "   Single variable [null] TRUE   Elevation at Top of depth interval (calculated)
To_Elev "   Single variable [null] TRUE   Elevation at Bottom of depth interval (if applicable)
Porosity PorosityAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Porosity data available?
Permeablty PermeabilityAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Permeability data available?
Density DensityAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Density data available?
ThinSect ThinSectionMade   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Thin section made ?
Geochron GeochronAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Geochron done?
Geochem GeochemAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Geochemistry analysis done?
Geothermal GeothermalAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Geothermal data available?
WholeRock WholeRockAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Whole rock chemsitry done?
Paleontlgy PaleontologyAvail   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Paleontology done?
DrillMethd DrillMethod 16 String CVD
WellDrillMethod
[null] TRUE core, mud-rotary, air-rotary, reverse circ, wire rig, cable tool Drilling method.
Note: This and subsequent fields are duplicated by Well_Bore. for ease of data entry. A query should populate Well_Bore if data is entered here.
BoreDia "   Single variable [null] TRUE 6 diameter of well bore BoreUnits
BoreUnits " 16 String CVD
LengthUnits
[null] TRUE cm, inches, feet, etc. length units of diameter
DrillFluid " 16 String CVD
WellDrillingFluid
[null] TRUE unspecified, saltwater, mud, diesel, other Drilling fluid used in well.
FldSalinity FluidSalinity   Single variable [null] TRUE 123.456 Drilling fluid salinity.
FldRstvity FluidResistivity   Single variable [null] TRUE 123.456 Drilling fluid resistivity.
Fluid_pH "   Single variable [null] TRUE 4.567 Drilling fluid pH.
FldDensity FluidDensity   Single variable [null] TRUE 1.234 Drilling fluid density.
FldLevel FluidLevel   Single variable [null] TRUE 678.9 Drilling fluid level.
FldViscsty FluidViscosity   Single variable [null] TRUE 25.8 Drilling fluid viscosity.
FluidLoss   50 String variable [null] TRUE lost circulation Notes regarding drilling fluid loss.
EnteredBy " 4 String variable [null] TRUE ASR Initials of person entering data
EntryDate "   Date   [null] TRUE 9/21/2010 Date record was entered
IntvlNotes IntervalNotes 255 String variable [null] TRUE description Comments about this particular interval.

Table: WS_WaterTable

This non-spatial table stores water table data for a sample set. This table is not related to WS_Interval data because the data of interest is a depth.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
SamplSetID SampleSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Sample Set GUID Identifier (foreign key; 1:M relationship with Well_Samples table)
MeasureDate "   Date   [null] TRUE 11/25/2010 Date measurement taken.
Qualifier " 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding value.
Dpth2Water Depth2Water   Single variable [null] TRUE 200.2 Depth to water
StWaterElv StaticWaterElev   Single variable [null] TRUE 5430.6 Static elevation of water table
Notes " 255 String variable [null] TRUE description Comments about this particular record.

Sample Data:

Table: WS_Interval

This table represents header data for a sampled interval within a sample set. The SampleGUID generated by this table participates in 1:1 relationships with child sample parameter tables. Sample identifiers are not primary keys because the depth or interval the sample was taken from is what is what locates and identifies the sample. Repeat measurements for a given sample interval will need to have separate IntervalGUIDs.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GlobalID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Sample GUID Identifier (primary key; 1:1 relationship with child WS_* tables)
SamplSetID SampleSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Sample Set GUID Identifier (foreign key; 1:M relationship with Well_Samples table)
SampleID " 128 String variable [null] TRUE ABC-123-456 Sample Identifier (if applicable)
From_Depth "   Single variable [null] TRUE   Measured depth to top of interval
To_Depth "   Single variable [null] TRUE   Measured depth to bottom of interval [leave NULL if only tops are recorded]
From_TVD "   Single variable [null] TRUE   Total Vertical Depth of top of interval
To_TVD "   Single variable [null] TRUE   Total Vertical Depth of bottom of interval [leave NULL if only tops are recorded]
From_Elev From_Elevation   Single variable [null] TRUE   Elevation at Top of depth interval (calculated)
To_Elev To_Elevation   Single variable [null] TRUE   Elevation at Bottom of depth interval (if applicable)
Intv_Notes Interval_Notes 255 String variable [null] TRUE description Comments about this particular interval.

Table: WS_Descrp

This table stores Sample Description data for a sample interval.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Interval GUID Identifier (foreign key; 1:1 relationship with Parent WS_Interval table)
GeoID " 16 String variable undefined FALSE IPm basis of relationship with Lith_poly and Subcrop_poly
Name " 128 String variable [null] TRUE Madera Group undifferentiated Name of lithologic unit.
LithClass " 50 String CVD
LithClass
[null] TRUE sedimentary, intrusive, volcanic, metamorphic, anthropogenic, water Class of lithologic unit
LithType " 50 String CVD
LithType
[null] TRUE

Sedimentary: siliciclastic, mixed, nonsiliciclastic

Volcanic: lava flow, dome, ash, volcaniclastic

Intrusive: plutonic, hypabyssal, dike, sill

Metamorphic: metasedimentary, metavolcanic, metaplutonic, unknown protolith

Anthropogenic: disturbed land, artificial fill, tailings, dump

Type of unit of specified class
IgneousCmp IgneousComposition 50 String CVD
IgneousComposition
[null] TRUE unknown, leucocratic, silicic, felsic, intermediate, mafic, ultramafic, [other - specify] Igneous composition (if applicable)
MMfacies MetamorphicFacies 50 String CVD
MetamorphicFacies
[null] TRUE unknown, zeolite, prehnite-pumpellyite, greenschist, amphibolite, granulite, blueschist, eclogite, hornfels, sanidinite Metatmorphic facies (if applicable)
Mineralogy " 255 String variable [null] TRUE mineral assemblage: e.g. Bt+Qtz+Kspar+musc; Cc; etc. Mineralogy (if applicable)
PrimLith PrimaryLithology 128 String variable [null] TRUE sand, gravel, limestone, rhyolite, granite, diorite, amphibolite, schist, gneiss, mudstone, shale, sandstone etc. Could use defined ontologies like NGMDB vocabularies. Primary lithology
SecondLith SecondaryLithology 128 String variable [null] TRUE minor- sand, gravel, limestone, rhyolite, granite, diorite, amphibolite, mudstone, shale, sandstone etc. Could use defined ontologies like NGMDB vocabularies. Secondary lithology
ShortDesc ShortUnitDescription 255 String variable [null] TRUE Concise unit description. Description of the unit throughout the map area.
UnitDesc UnitDescription 65535 TEXT variable [null] TRUE Unit description Description of the unit throughout the map area.
Texture " 255 String CVD
Texture
[null] TRUE angular, subangular, subrounded, rounded, well-rounded, clastic, glassy, ahphanitic, phaneritic, porphyritic, megacrystic, brecciated, mylonitic, etc. Provenance of unit
Color " 255 String variable [null] TRUE Munsell(?) color Color of unit.
GrainSize " 255 String variable [null] TRUE grain size: coarse, medium, fine, silt, clay, [or numeric: e.g. 1m clasts] Grainsize of unit.
Sorting " 255 String variable [null] TRUE well, moderate, poor, bimodal Degree of sorting of grains.
Cemntation Cementation 255 String variable [null] TRUE unspecified, none, silica, calcite, hematite, zeolite, etc. Cementation of unit.
Induration " 255 String CVD
Induration
[null] TRUE unspecified, well, moderate, poor, unconsolidated Induration of unit.
Protolith " 255 String variable [null] TRUE unspecified, pelite, sandstone, basalt, etc. Induration of unit.
Comments " 255 String variable [null] TRUE   Comments about this description.

Table: WS_PoreSpace

This table stores data about pore space parameters for a a sample interval.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Interval GUID Identifier (foreign key; 1:1 relationship with Parent WS_Interval table)
Poro_Qual Porosity_Qualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding Porosity.
Porosity "   Single variable [null] TRUE 7 Porosity
Perm_Qual Permeability_Qualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding Permeability.
Perm_mD Permeability_mD   Double variable [null] TRUE 10^7 Permeability in mD (milliDarcy)
OilSatQual OilSatQualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE, Trace Qualifier regarding oil saturation.
Satrtn_Oil Saturation_Oil   Double variable [null] TRUE   % Saturation of pore space with oil
H2OSatQual H2OSatQualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE, Trace Qualifier regarding water saturation.
Satrtn_H2O Saturation_H2O   Double variable [null] TRUE   % Saturation of pore space with water
Comments " 255 String variable [null] TRUE description Comments about this particular interval

Table: Well_SmplData (not in schema yet)

This non-spatial table is an extensible table where attributes could be stored from sample analyses. This table links to the Well_Sample table via SampleGUID. Parameters are specified per record. This table would be most useful for infrequently measured parameters. Frequently encountered data should probably be stored in more customized tables or combined with other related attributes in larger data tables.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Interval GUID Identifier (foreign key; 1:1 relationship with Parent WS_Interval table)
Parameter     String variable [null] FALSE porosity, permeability, density, color, etc. Name of property to store attributes for
Unit     String variable [null] FALSE mDarcy, g/cc, etc. Name of property to store attributes for
Method     String variable [null] FALSE geophysical interpretation, direct measurement, lab measurement, ? Method used to obtain parameter
Precision     Double variable [null] TRUE 5430.6 +/- precision of analysis.
Qualifier " 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding value.
DateData "   Date   [null] TRUE 11/25/2010 Date of record aquisition (time-series data).
FloatData     Double variable [null] TRUE 5430.6 Double precision Floating point data
IntegerData     Long Integer variable [null] TRUE 1234 Integer Data
ErrorEst ErrorEstimate   Double variable [null] TRUE 5430.6 Double precision +/- error data
Quality " 50 String variable [null] TRUE excellent, poor, etc. Qualifier terms regarding quality of data
Notes " 255 String variable [null] TRUE notes Comments about this particular record.

Geothermal Datasets:

Table: GT_BHT

This table stores Bottom Hole Temperature data for a sample interval.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
SamplSetID SampleSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Sample Set GUID Identifier (foreign key; 1:M relationship with Well_Samples table)
Depth "   Single variable [null] TRUE 200.2 Depth to measurement
BHT BottomHoleTemperature 4 Single variable [null] TRUE 43 Bottom hole temperature
TempUnit " 5 String CVD
TempUnit
C TRUE C, F Temperature unit in degrees C or F
HrsSnceCir HoursSinceCirculation 4 Single variable [null] variable hours Hours since circulation
DateMeasrd Datemeasured 8 Date [null] TRUE 1/5/2011 Date record was measured
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Table: GT_Conductvty

This table stores Theremal Conductivity data for a sample interval.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Interval GUID Identifier (foreign key; 1:1 relationship with Parent WS_Interval table)
Cnductvity Conductivity   Single variable [null] TRUE 43 Thermal Conductivity
CnductUnit ConductivityUnit 3 String CVD
ThermConductUnit
SI TRUE SI, TCU Thermal Conductivity unit in SI or TCU.
IntrvlGrad IntervalGradient   Single variable [null] TRUE 123.456 Gradient of thermal conductivity for this interval
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Table: GT_HeatFlow

This table stores Heat Flow data for a Well Sample or sample set.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
IntrvlGUID IntervalGUID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Interval GUID Identifier (foreign key; 1:1 relationship with Parent WS_Interval table)
Gradient "   Single         Geothermal gradient measured over the interval for this sample
Ka "   Single variable [null] TRUE 7.81 Measured aggregate conductivity
Ka_unit " 3 string CVD
ThermConductUnit
SI   SI, TCU Aggregate Conductivity Unit
Pm "   Single variable [null] TRUE 2.66 Matrix density
Kpr "   Single variable [null] TRUE 7.55 Porous Rock conductivity
Kpr_unit   3 String CVD
ThermConductUnit
SI TRUE SI, TCU Porous Rock Conductivity Unit
Q "   Single variable [null] TRUE 2.12 Heat Flow
Q_unit " 3 String CVD
HeatFlowUnit
SI TRUE SI, HFU Heat Flow Unit
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Table: GT_TempDepth

This table stores Temperature / Depth data for a Well Sample or sample set.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
SamplSetID SampleSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Sample Set GUID Identifier (foreign key; 1:M relationship with Well_Samples table)
Depth "   Single variable [null] TRUE 200.2 Depth to measurement
Temp " 4 Single variable [null] TRUE   Temperature
TempUnit " 1 string CVD C TRUE C, F, K Temperature Unit
IntrvlGrad IntervalGradient   Single     TRUE   Interval Gradient
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Table: GT_SumHeatFlow

This table stores Summary Heat Flow data for a set of Well Samples within a specified range of depths. This table is not directly related to particular samples, but is instead part of a recordset. The samples that are summarized here can be selected by the depth range and/or GeoID within a given well.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; many:1 relationship with Well_Records table)
SamplSetID SamplSetGUID   GUID user maintained [null] TRUE {4G3504E2-4F89-13S3-7B0D-1304E82C4402} If summary data is based on data from a sample set, the SampleSetID can be copied here by the user.
LithClass " 50 String CVD
LithClass
[null] TRUE sedimentary, intrusive, volcanic, metamorphic, anthropogenic, water Class of lithologic unit
UnitBasis " 16 String CVD
UnitBasis
[null] TRUE Group, Formation, Member, Lithology, Age Basis of unit definition for this interval
UnitName " 128 String variable [null] TRUE Dakota Sandstone, Jackpile Member, sandstone, coal bed, etc. Name of lithologic unit
GeoID " 16 String variable [null] TRUE Jd, Kmv, Pa, etc. Standard abbreviation for stratigraphic unit. Basis of relationship with Lithology table.
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval [leave NULL if only tops are recorded]
From_Elev From_Elevation   Single variable [null] TRUE   Elevation at Top of depth interval (calculated)
To_Elev To_Elevation   Single variable [null] TRUE   Elevation at Bottom of depth interval (if applicable)
ThermlGrad ThermalGradient 4 Single variable [null] TRUE 45.6 Thermal Gradient
TGError ThermalGradientError 4 Single variable [null] TRUE 2.4 margin of error
GradUnit GradientUnit 3 string CVD [null] TRUE SI, TCU SI (Degrees C/KM), TCU(Degrees F/ft)
TGradRange ThermalGradientRange 15 string variable [null] TRUE 29.1-31.2 thermal gradient range over the interval recorded
SampleType " 50 CVD
WellSampleType
variable [null] TRUE split, pulp, composite, datapoint, dataset, etc. Sample type of specified class
NumSamples " 4 SmallInt variable [null] TRUE 10 No of thermal conductivity samples
ThermlCond ThermalConductivity 4 Single variable [null] 5.49 Measurement of thermal conductivity
TCondError ThermalConductivityError 4 Single variable [null] 0.35 margin of error in thermal conductivity
TCondUnit ThermalConductivityUnit 3 string CVD SI TRUE   SI, TCU
TCondRange ThermalConductivityRange 15 string variable [null] TRUE 1.64-2097 Range of thermal conductivity over interval measured.
HeatFlow " 4 Single variable [null] TRUE 9.68 Heat flow measured
HtFlowErr HeatFlowError 4 Single variable [null] TRUE 0.5 margin of error in heat flow
HtFlowUnit HeatFlowUnit 50 string CVD SI TRUE   SI, HFU
HtFlowEst HeatFlowEstimate 4 Single variable [null] TRUE 64 Best heat flow estimate
Quality " 50 string variable [null] TRUE A, B, C Quality of best heat flow data
Comments " 255 String variable [null] TRUE description Comments about this particular measurement

Completion Report Data

Issues:

Well_Liner

This non-spatial table records liner data from completion reports (C105 forms). Depth datums (MD or TVD) are specifed in Well_Z_Datum.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
LinerSize " 16 String CVD
[null] TRUE 2 3/8", etc liner size (commonly in 1/8" increments)
Should the CVD show fractions but store decimal sizes?
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
Sx SacksCement   Integer variable [null] TRUE 123456 Sacks of cement used
Screen "   ?         NEED HELP HERE

Well_Perf

This non-spatial table records perforation data from completion reports (C105 forms). Depth datums (MD or TVD) are specifed in Well_Z_Datum. Need to discuss whether this data should be related to production data via a PerfIntervalID.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
PerfType PerforationType 16 String CVD
[null] TRUE open hole, screen, etc? Type of perforation used
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval

Well_Tubing

This non-spatial table records tubing data from completion reports (C105 forms). Depth datums (MD or TVD) are specifed in Well_Z_Datum.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
TubingSize " 16 String CVD
[null] TRUE 2 3/8", etc tubing size (commonly in 1/8" increments)
Should the CVD show fractions but store decimal sizes?
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
PackerSet "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Was a packer set?

Well_Treatmnt

This non-spatial table records well treatment data from completion reports (C105 forms). Depth datums (MD or TVD) are specifed in Well_Z_Datum.

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
FromDepth "   Single variable [null] TRUE   Top of depth interval
ToDepth "   Single variable [null] TRUE   Bottom of depth interval
Treatment "   TEXT variable [null] FALSE   Memo/TEXT field to describe treatment made to depth interval.
Comments " 255 String variable [null] FALSE    

Well_Drillers

This non-spatial table records well driller information from completion reports (C105 forms).

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
Source " 50 String variable [null] TRUE PI_Dwights, C103, etc Source of info (can Recordset Source work here?)
Month "   Integer Range [null] TRUE 1-12 month
Day "   Integer Range [null] TRUE 1-31 day
Year "   Integer Range [null] TRUE 1900-2100 year
WorkType " 24 String CVD [null] FALSE New location, Drilling, Completion, Work Over, Test Data, Resurveyed Work type represented by this record.
Information "   TEXT variable [null] FALSE   Notes from driller.

Production

This non-spatial table records well production information from completion reports (C105 forms).

Field Name Field Alias Length
(text fields)
Field Type Field Value Default Allow Nulls? Attributes / Examples Description / Notes
RecrdSetID RecordSetID   GUID [auto]   FALSE {3F2504E0-4F89-11D3-9A0C-0305E82C3301} Well Recordset Identifier (foreign key; 1:1 relationship with Well_Records table -- one log per recordset -- one log per recordset)
Method " 24 String CVD [null] TRUE flowing, pumping, gas lift, swab Production method
Qualifier " 24 String CVD [null] TRUE shut-in, waiting on pipeline, test Production qualifier
ChokeSize " 24 String CVD [null] TRUE fractions in 8ths or 64ths Device to regulate the rate of flow in the well. Should the CVD show fractions but store decimal sizes?
Zone "   String variable [null] FALSE Morrow sand1, Morrow sand2, etc. Producing formation, zone
GOR "   Single variable [null] TRUE   Gas-oil ratio – in ft3 gas/bbl oil: Total Gas (in solution and free) divided by oil production
FTP "   Single variable [null] TRUE   Flowing Tube Pressure
FTPunits " 4 String CVD
[null] TRUE PSI, SI Pressure units used for FTP
SITP "   Single variable [null] TRUE   Shut In Tube Pressure
SITPunits " 4 String CVD
[null] TRUE PSI, SI Pressure units used for SITP
CsgPress CasingPressure   Single variable [null] TRUE   Casing Pressure
CsgPressUn CasingPressUnits 4 String CVD
[null] TRUE PSI, SI Pressure units used for Casing Pressure
BOPD "   Single variable [null] TRUE   Barrels of oil per day
BOPDqual BOPDqualifier 3 String CVD
ComparisonOperators
[null] TRUE EQ, LT, GT, GTE, LTE Qualifier regarding BOPD value.
TraceOil "   Short Integer boolean 0 (no) FALSE 1=yes/TRUE, 0=no/FALSE Trace oil present
MCFGD "   Single variable [null] TRUE   Thousand Cubic Feet Gas per day
MCFGDqual MCFGDqualifier 4 String CVD [null] TRUE EST, CAOF Qualifier regarding MCFGD value.
BWD "   Single variable [null] TRUE   Barrels of water per day
BWDqual BWDqualifier 4 String CVD [null] TRUE EST, CAOF Qualifier regarding BWD value.
APIoilGrav APIoilGravity   Single Range (0-70) [null] TRUE   Compares the density of the oil to water set by the American Petroleum Institute.  Less than 10 is more dense than water
GasGrav GasGravity   Single variable [null] TRUE   gas density at STP in g/cc
IP InitialProduction 4 String CVD [null] TRUE IPF, IPP, IPS, IPGL, unspecified Initial production:
  • IPF: (initial production flowing)
  • IPP: (initial production pumping)
  • IPS: (initial production swabbing)
  • IPGL: : (initial production with gas lift)
  • unspecifed: (initial production/potential method not designated)
GasBTU "   Single variable [null] TRUE   Gas heating value in BTUs
MiscInfo "   TEXT variable [null] FALSE   Memo field for comments