0% found this document useful (0 votes)
117 views316 pages

RESQML Technical Reference Guide v2.2 v1.0

RESQML is data-transfer standard that facilitates reliable, automated transfer of data among software packages used in subsurface workflows. RESQML consists of a set of XML schemas (XSD files) and other standards-based technology, which developers implement into software packages. Software that has implemented RESQML can read and write the standard format.

Uploaded by

akmal_salim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
117 views316 pages

RESQML Technical Reference Guide v2.2 v1.0

RESQML is data-transfer standard that facilitates reliable, automated transfer of data among software packages used in subsurface workflows. RESQML consists of a set of XML schemas (XSD files) and other standards-based technology, which developers implement into software packages. Software that has implemented RESQML can read and write the standard format.

Uploaded by

akmal_salim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 316

RESQML Technical Reference Guide v2.

RESQML RESQML is data-transfer standard that facilitates


reliable, automated transfer of data among
Overview software packages used in subsurface
workflows. RESQML consists of a set of XML
schemas (XSD files) and other standards-based
technology, which developers implement into
software packages. Software that has
implemented RESQML can read and write the
standard format.
Version of Standard 2.2
Version of Document 1.0
Date published May 16, 2022
Prepared by Energistics
Abstract This document lists and defines packages, data
objects, elements, and relationships for RESQML
schemas. Its contents are produced from the
resqml package of the energyML UML model,
the same model used to produce the schemas.
Document type Technical reference guide
Language U.S. English
Keywords: standards, energy, data, information, process,
reservoir model, shared earth model
RESQML Technical Reference Guide v2. 2

Usage, Intellectual Property Rights, and Copyright


This document was developed using the Energistics Standards Procedures. These procedures help implement
Energistics’ requirements for consensus building and openness. Questions concerning the meaning of the
contents of this document or comments about the standards procedures may be sent to Energistics at
[email protected].
The material described in this document was developed by and is the intellectual property of Energistics.
Energistics develops material for open, public use so that the material is accessible and can be of maximum
value to everyone.
Use of the material in this document is governed by the Energistics Intellectual Property Policy document and the
Product Licensing Agreement, both of which can be found on the Energistics website,
https://www.energistics.org/legal-page/.
All Energistics published materials are freely available for public comment and use. Anyone may copy and share
the materials but must always acknowledge Energistics as the source. No one may restrict use or dissemination
of Energistics materials in any way.
Trademarks
Energistics®, Adopt>Advance>Accelerate®, Energistics Certified Product® and their logos are registered
trademarks and WITSML™, PRODML™, RESQML™ are trademarks or registered trademarks of Energistics
Consortium, Inc. in the United States. Access, receipt, and/or use of these documents and all Energistics
materials are generally available to the public and are specifically governed by the Energistics Product Licensing
Agreement (http://www.energistics.org/product-license-agreement).
Other company, product, or service names may be trademarks or service marks of others.

Standard: v2.2 / Document: v1.0 / May 16, 2022 2


RESQML Technical Reference Guide v2. 2

Amendment History
Standard Document Date Comment
Version Version
2.2 1.0 May 16, 2022 For a summary of changes, see
RESQML_v2.2_Release_Notes_v1.0.pdf.

Standard: v2.2 / Document: v1.0 / May 16, 2022 3


RESQML Technical Reference Guide v2. 2

Table of Contents
Table of Contents..........................................................................................................4
1 Introduction...........................................................................................................9
1.1 Audience, Purpose and Scope ........................................................................... 9
1.2 Resource Set .................................................................................................... 9
2 Features...............................................................................................................10
2.1 AbstractFeature .............................................................................................. 12
2.2 AbstractTec hnicalFeature ................................................................................ 13
2.3 BoundaryFeature ............................................................................................ 14
2.4 CulturalFeature ............................................................................................... 15
2.5 CulturalFeatureKind ........................................................................................ 16
2.6 CulturalFeatureKindExt ................................................................................... 17
2.7 Model ............................................................................................................. 18
2.8 RockVolumeFeature ....................................................................................... 19
3 Geometry .............................................................................................................20
3.1 AbstractGeometry ........................................................................................... 22
3.2 AbstractParametricLineArray ........................................................................... 23
3.3 AbstractParametricLineGeomet ry..................................................................... 24
3.4 AbstractPlaneGeometry .................................................................................. 25
3.5 AbstractPoint3dA rray ...................................................................................... 26
3.6 Graph2dRepresentation .................................................................................. 27
3.7 Horiz ontalPlaneGeometry ................................................................................ 28
3.8 ParametricLineArray ....................................................................................... 29
3.9 ParametricLineFromRepresentationGeometry .................................................. 32
3.10 ParametricLineFromRepresentationLatticeArray ............................................... 33
3.11 ParametricLineGeomet ry ................................................................................. 34
3.12 ParametricLineIntersections............................................................................. 35
3.13 Point2dExternalA rray ...................................................................................... 36
3.14 Point3d........................................................................................................... 37
3.15 Point3dExternalA rray ...................................................................................... 38
3.16 Point3dFromRepresentationLatticeArray .......................................................... 39
3.17 Point3dLatticeArray ......................................................................................... 40
3.18 Point3dLatticeDimension ................................................................................. 41
3.19 Point3dP arametricArray .................................................................................. 42
3.20 Point3dZV alueArray ........................................................................................ 44
3.21 PointGeometry ................................................................................................ 45
3.22 SinglePointGeometry ...................................................................................... 46
3.23 ThreePoint3d .................................................................................................. 47
3.24 TiltedPlaneGeomet ry....................................................................................... 48
4 GraphicalInformationObject..............................................................................49
4.1 AbstractColorMap ........................................................................................... 51
4.2 AbstractGraphicalInformationForIndexableElement ........................................... 52
4.3 AlphaInformation............................................................................................. 54
4.4 AnnotationInformation ..................................................................................... 55
4.5 ColorInformation ............................................................................................. 56
4.6 ColorMapDictionary ......................................................................................... 57
4.7 ContinuousColorMap....................................................................................... 58
4.8 ContinuousColorMapE ntry ............................................................................... 59
4.9 Cont ourLineSetInformation .............................................................................. 60
4.10 DefaultGraphicalInformation ............................................................................ 61
4.11 DiscreteColorMap ........................................................................................... 62

Standard: v2.2 / Document: v1.0 / May 16, 2022 4


RESQML Technical Reference Guide v2. 2

4.12 DiscreteColorMapEntry ................................................................................... 63


4.13 DisplaySpac e ................................................................................................. 64
4.14 EdgePattern ................................................................................................... 65
4.15 EdgePatternExt............................................................................................... 66
4.16 GraphicalInformationForEdges ........................................................................ 67
4.17 GraphicalInformationForFaces ......................................................................... 68
4.18 GraphicalInformationForNodes ........................................................................ 69
4.19 GraphicalInformationForVolumes ..................................................................... 70
4.20 GraphicalInformationForWholeObject ............................................................... 71
4.21 Hs vColor ........................................................................................................ 72
4.22 InterpolationDomain ........................................................................................ 73
4.23 InterpolationMethod ........................................................................................ 74
4.24 MinMax .......................................................................................................... 75
4.25 NodeSymbol ................................................................................................... 76
4.26 NodeSymbolExt .............................................................................................. 77
4.27 SizeInformation............................................................................................... 78
4.28 ViewerKind ..................................................................................................... 79
4.29 ViewerKindExt ................................................................................................ 80
5 Grids.....................................................................................................................81
5.1 AbstractColumnLayerGridGeometry ................................................................. 94
5.2 AbstractColumnLayerGridRepresentation ......................................................... 96
5.3 AbstractGridGeometry ..................................................................................... 97
5.4 AbstractGridRepres entation............................................................................. 98
5.5 AbstractParentWindow .................................................................................... 99
5.6 AbstractTruncat edColumnLayerGridRepresentation .........................................100
5.7 Activation ......................................................................................................101
5.8 AdditionalGridPoints .......................................................................................102
5.9 AdditionalGridTopology ..................................................................................103
5.10 AlternateCellIndex ..........................................................................................104
5.11 CellFluidPhaseUnits .......................................................................................105
5.12 CellOverlap ...................................................................................................106
5.13 CellParentWindow .........................................................................................107
5.14 CellShape .....................................................................................................108
5.15 ColumnLayerGpGrid ......................................................................................109
5.16 ColumnLayerP arentWindow ...........................................................................110
5.17 ColumnLayerS plitCoordinat eLines ..................................................................111
5.18 ColumnLayerS ubnodeTopology ......................................................................112
5.19 ColumnShape................................................................................................113
5.20 ColumnSubnodeP atch....................................................................................114
5.21 ConnectionInterpret ations ...............................................................................115
5.22 Edges ...........................................................................................................116
5.23 GpGridRepresentation....................................................................................117
5.24 Grid2dRepresentation ....................................................................................118
5.25 GridConnectionSetRepresentation ..................................................................119
5.26 GridGeometryAttachment ...............................................................................121
5.27 IjGaps ...........................................................................................................123
5.28 IjkGpGridP atch ..............................................................................................124
5.29 IjkGridGeometry .............................................................................................125
5.30 IjkGridRepresent ation.....................................................................................126
5.31 IjkParentWindow ............................................................................................127
5.32 IntervalGridCells ............................................................................................128
5.33 Intervals ........................................................................................................129
5.34 IntervalStratigraphicUnits................................................................................130
5.35 KDirection .....................................................................................................131
5.36 KGaps ...........................................................................................................132

Standard: v2.2 / Document: v1.0 / May 16, 2022 5


RESQML Technical Reference Guide v2. 2

5.37 LocalGridSet ..................................................................................................133


5.38 OverlapVolume ..............................................................................................134
5.39 PillarShape ....................................................................................................135
5.40 Regrid ...........................................................................................................136
5.41 SplitColumnEdges .........................................................................................137
5.42 SplitEdges .....................................................................................................138
5.43 SplitFaces .....................................................................................................139
5.44 SplitNodePatch ..............................................................................................140
5.45 SubnodeNodeObject ......................................................................................141
5.46 SubnodeP atch ...............................................................................................142
5.47 SubnodeTopology ..........................................................................................143
5.48 Trunc atedIjkGridRepresent ation......................................................................144
5.49 Trunc atedUnstructuredColumnLayerGridRepresentation ..................................145
5.50 Trunc ationCellPatch .......................................................................................146
5.51 UniformSubnodePatch ...................................................................................148
5.52 UnstructuredColumnE dges .............................................................................149
5.53 UnstructuredColumnLayerGpGridPatch...........................................................150
5.54 UnstructuredColumnLayerGridGeometry .........................................................151
5.55 UnstructuredColumnLayerGridRepresentation .................................................153
5.56 UnstructuredGpGridP atch...............................................................................154
5.57 UnstructuredGridGeometry .............................................................................155
5.58 UnstructuredGridHingeNodeFaces ..................................................................157
5.59 UnstructuredGridRepresent ation .....................................................................158
5.60 UnstructuredS ubnodeTopology .......................................................................159
5.61 VariableSubnodeP atch ...................................................................................160
6 Interpretations ..................................................................................................161
6.1 AbstractCont actInterpretationPart ...................................................................164
6.2 AbstractFeatureInterpretation .........................................................................165
6.3 AbstractGeologicUnitOrganizationInterpretation ...............................................166
6.4 AbstractOrganizationInterpretation ..................................................................167
6.5 AbstractTimeInterval ......................................................................................168
6.6 BinaryContactInterpretationP art ......................................................................169
6.7 BoundaryFeatureInterpretation .......................................................................170
6.8 BoundaryFeatureInterpretationPlusItsRank ......................................................172
6.9 Cont actElement .............................................................................................173
6.10 Cont actMode .................................................................................................174
6.11 Cont actSide...................................................................................................175
6.12 Cont actVerb ..................................................................................................176
6.13 DepositionalE nvironmentKind .........................................................................177
6.14 DepositionalE nvironmentKindExt ....................................................................178
6.15 DepositionalFaciesKind ..................................................................................179
6.16 DepositionalFaciesKindExt .............................................................................184
6.17 DepositionMode .............................................................................................185
6.18 Domain .........................................................................................................186
6.19 EarthModelInterpretation ................................................................................187
6.20 FaultInterpretation ..........................................................................................188
6.21 Fault Throw ....................................................................................................189
6.22 FluidBoundary Interpretation............................................................................190
6.23 FluidCont act ..................................................................................................191
6.24 GenericFeatureInterpretation ..........................................................................192
6.25 GeneticBoundaryBasedTimeInterval ...............................................................193
6.26 GeobodyBoundaryInterpretation .....................................................................194
6.27 Geobody Interpretation....................................................................................195
6.28 Geologic TimeB asedTimeInterval ....................................................................196
6.29 GeologicUnitInt erpretation ..............................................................................197

Standard: v2.2 / Document: v1.0 / May 16, 2022 6


RESQML Technical Reference Guide v2. 2

6.30 GeologicUnitMaterialEmplacement..................................................................198
6.31 GeologicUnitOccurrenceInt erpretation .............................................................199
6.32 Horiz onInterpretation......................................................................................200
6.33 MultipleCont actInterpretationPart ....................................................................201
6.34 OrderingCriteria .............................................................................................202
6.35 Phase ...........................................................................................................203
6.36 ReservoirCompartment Interpretation ...............................................................204
6.37 ReservoirCompartment UnitInterpretation .........................................................205
6.38 RockFluidOrganizationInterpretation ...............................................................206
6.39 RockFluidUnit Interpretation ............................................................................207
6.40 SequenceStratigraphySurfaceKind..................................................................208
6.41 SequenceStratigraphySurfaceKindExt .............................................................209
6.42 Shape3d........................................................................................................210
6.43 Shape3dExt ...................................................................................................211
6.44 Stratigraphic Column.......................................................................................212
6.45 Stratigraphic ColumnRank Interpretation ...........................................................213
6.46 Stratigraphic Role ...........................................................................................214
6.47 Stratigraphic UnitInterpretation.........................................................................215
6.48 StructuralOrganizationInterpretation ................................................................216
6.49 ThrowKind .....................................................................................................218
6.50 ThrowKindExt ................................................................................................219
6.51 VoidageGroupInterpretation............................................................................220
7 Properties ..........................................................................................................221
7.1 AbstractProperty ............................................................................................222
7.2 AbstractValuesProperty ..................................................................................224
7.3 BooleanArrayFromDiscretePropertyArray ........................................................225
7.4 BooleanProperty ............................................................................................226
7.5 CommentProperty ..........................................................................................227
7.6 ContinuousProperty .......................................................................................228
7.7 DiscreteProperty ............................................................................................230
7.8 PointsProperty ...............................................................................................231
8 Representations ...............................................................................................232
8.1 AbstractRepresentation ..................................................................................235
8.2 Element Identity ..............................................................................................238
8.3 Element Indic es ..............................................................................................239
8.4 IdentityKind ...................................................................................................240
8.5 PolylineSetPatch............................................................................................241
8.6 RepresentationIdentity....................................................................................243
8.7 RepresentationIdentitySet ..............................................................................244
8.8 RepresentationS etRepresentation...................................................................245
8.9 SubRepresentation ........................................................................................246
8.10 SubRepresentationP atch ................................................................................247
9 Seismic ..............................................................................................................248
9.1 AbstractSeismicCoordinates ...........................................................................250
9.2 AbstractSeismicLineFeature ...........................................................................251
9.3 AbstractSeismicSurveyFeature .......................................................................252
9.4 CmpLineFeature ............................................................................................253
9.5 Seismic2dCoordinates....................................................................................254
9.6 Seismic2dPostStackRepresent ation ................................................................255
9.7 Seismic3dCoordinates....................................................................................256
9.8 Seismic3dPostStackRepresent ation ................................................................257
9.9 SeismicLatticeFeature ....................................................................................258
9.10 SeismicLatticeSetFeature ...............................................................................259

Standard: v2.2 / Document: v1.0 / May 16, 2022 7


RESQML Technical Reference Guide v2. 2

9.11 SeismicLineSetFeature ..................................................................................260


9.12 ShotPointLineFeature.....................................................................................261
10 Streamlines .......................................................................................................262
10.1 StreamlineFlux ...............................................................................................263
10.2 StreamlineFluxExt ..........................................................................................264
10.3 StreamlinesFeat ure ........................................................................................265
10.4 StreamlinesRepresentation.............................................................................266
10.5 StreamlineWellbores ......................................................................................267
11 Structural...........................................................................................................268
11.1 AbstractSurfaceFrameworkContact .................................................................270
11.2 AbstractSurfaceFrameworkRepresent ation ......................................................271
11.3 AbstractSurfaceRepresentation.......................................................................272
11.4 Cont actIdentity...............................................................................................273
11.5 Cont actPatch .................................................................................................274
11.6 Cont actReferenc e ..........................................................................................275
11.7 EdgePatch.....................................................................................................276
11.8 LineRole........................................................................................................277
11.9 LineRoleExt ...................................................................................................278
11.10 NonS ealedCont act .........................................................................................279
11.11 NonS ealedSurfaceFrameworkRepresentation..................................................280
11.12 PatchBoundaries ...........................................................................................281
11.13 PlaneSet Repres entation.................................................................................282
11.14 PointSetRepresentation..................................................................................283
11.15 PolylineRepresentation...................................................................................284
11.16 PolylineSetRepresentation..............................................................................285
11.17 SealedContact ...............................................................................................286
11.18 SealedSurfac eFrameworkRepresentation........................................................287
11.19 SealedVolumeFrameworkRepresentation ........................................................288
11.20 SurfaceRole...................................................................................................289
11.21 TriangleP atch ................................................................................................290
11.22 TriangulatedSet Representation.......................................................................291
11.23 VolumeRegion ...............................................................................................292
11.24 VolumeS hell ..................................................................................................293
12 Wells...................................................................................................................294
12.1 BlockedWellboreRepres entation .....................................................................297
12.2 CorrectionInformation .....................................................................................298
12.3 FluidIntervalBoundary ....................................................................................299
12.4 FluidMarker ...................................................................................................300
12.5 GeologicBoundaryKind ...................................................................................301
12.6 MarkerBoundary ............................................................................................302
12.7 MarkerInterval................................................................................................303
12.8 MdDomain .....................................................................................................304
12.9 SeismicWellboreFrameRepresentation ............................................................305
12.10 Stratigraphic IntervalBoundary .........................................................................307
12.11 TvdInformation...............................................................................................308
12.12 WellboreFeature ............................................................................................309
12.13 WellboreFrameRepresentation .......................................................................310
12.14 WellboreInterpretation ....................................................................................311
12.15 WellboreIntervalS et ........................................................................................312
12.16 WellboreTrajectoryParentIntersection ..............................................................313
12.17 WellboreTrajectory Representation ..................................................................314
12.18 WitsmlWellWellbore .......................................................................................316

Standard: v2.2 / Document: v1.0 / May 16, 2022 8


RESQML Technical Reference Guide v2. 2

1 Introduction
This document:
• Lists and defines data objects, elements, and relationships for the data object schemas in the
RESQML folder of the energyML download package.
• Is produced from the resqml package of the UML model from which the RESQML XSDs are
produced, using a modeling tool named Enterprise Architect (EA). However, only this document
contains the definitions for the data objects, elements, and attributes.
IMPORTANT! This document includes the UML diagrams from EA. In some cases the diagrams are very
large and thus appear very small in this standard document size PDF. For better view of the diagrams:
• Use the zoom feature in your PDF viewer.
• View the UML model directly. The XMI file of the UML model is included in the energyML download
package (in the resqmldoc folder). This XMI format can be imported by any UML data modeling tool.

1.1 Audience, Purpose and Scope


This document:
• Is for information technology (IT) professionals—programmers, developers, architects and others—
who are implementing Energistics domain standards (e.g., into a software package).
• Lists and defines all classes, complex types, elements, and associations in the XML schemas. Each
of the subsequent chapters are generated from the relevant package in the UML model.
- Organization. Each chapter describes one of the main packages that make up the EA project.
Each chapter is organized by sub-package (if any), element types, and alpha-order within
element type.

1.2 Resource Set


• For the complete list of resources (schemas, documents, etc.) available for the Energistics Common
Technical Architecture, see Download_Pack age_REA D_ME.pdf.
• RESQML-specific resources are listed in that RESQML Technical Usage Guide v2.2.

Standard: v2.2 / Document: v1.0 / May 16, 2022 9


RESQML Technical Reference Guide v2. 2

2 Features
Package: xsd_schemas

Notes: This package contains the main classes used to define and exchange data for geologic
and technical features in RESQML Other packages in RESQML also define features and
may leverage classes in this Feature package; those other packages include:
• Wells
• Seismic
• Streamlines
Features refer to something that has physical existence at some point during the
exploration, development, production, or abandonment of a reservoir. For example: It can
be a boundary, a rock volume, a basin area, but also extends to a drilled well, a drilling
rig, an injected or produced fluid, or a 2D, 3D, or 4D seismic survey.
In RESQML, features are divided into these categories: geologic or technical.

Geologic Feature. Objects that exist a priori, in the natural world, for example: the rock
formations and how they are positioned with regard to each other; the fluids that are
present before production; or the position of the geological intervals with respect to each.
Some of these objects are static—such as geologic intervals---while others are
dynamic—such as fluids: their properties, geometries, and quantities may change over
time during the course of field production.
This concept of geologic feature is relative to the three following features:
BoundaryFeature, RockVolumeFeature and Model feature

Technical Feature. Objects that exist by the action of humans. Examples include: wells
and all they may contain, seismic surveys (surface, permanent water bottom), or injected
fluid volumes. Because the decision to deploy such equipment is the result of studies or
decisions by humans, technical features are usually not subject to the same kind of large
changes in interpretation as geologic features. However, they are still subject to
measurement error and other sources of uncertainty, and so still can be considered as
subject to “interpretation”.

AbstractObject
«XSDcomplexType,XSDtopLe...
AbstractFeature
«XSDelement»
+ IsWellKnown: boolean

«XSDcomplexType,XSDtopLe... «XSDcomplexType,XSDtopLe... «XSDcomplexType,XSDtopLe... «XSDcomplexType,XSDtopLe...


BoundaryFeature Model RockVolumeFeature AbstractTechnicalFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 10


RESQML Technical Reference Guide v2. 2

AbstractFeature
AbstractFeatureInterpretation
«XSDcomplexType,XSDtopLevelElement»
AbstractTechnicalFeature «XSDcomplexType,XSDtopLevelElement»
Interpretations::GenericFeatureInterpretation

«XSDcomplexType,XSDt...
Streamlines::
«XSDcomplexType,XS... «XSDcomplexType,XSDtopLevelElement»
StreamlinesFeature
Wells::WellboreFeature Seismic::AbstractSeismicSurveyFeature
«XSDelement»
+ Flux: StreamlineFluxExt

+WitsmlWellbore 0..1
«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType» «XSDcomplexType,X... Seismic::AbstractSeismicLineFeature
«XSDcomplexType» Seismic::SeismicLatticeFeature +IsPartOf
Seismic:: Seismic::
+IsPartOf
Wells::WitsmlWellWellbore «XSDelement»
0..1 SeismicLatticeSetFeature SeismicLineSetFeature 0..1
+ TraceLabels: StringExternalArray [0..1]
«XSDelement»
«XSDelement» + CrosslineLabels: IntegerLatticeArray [0..1]
+ WitsmlWell: DataObjectReference + InlineLabels: IntegerLatticeArray [0..1]
+ WitsmlWellbore: DataObjectReference

TypeEnum
«enumeration»
CulturalFeatureKind
«XSDcomplexType,XSDtopLevelElement»
CulturalFeature fieldblock
licenses
+ CulturalFeatureKind: CulturalFeatureKindExt pipeline
project boundaries
model frontier «XSDcomplexType,XSDtop... «XSDcomplexType,XSDtopLevelElement»
+ShotPointLineFeature
Seismic:: Seismic::CmpLineFeature
0..1
ShotPointLineFeature
«XSDelement»
+ NearestShotPointIndices: AbstractIntegerArray
EnumExtensionPattern
«XSDunion»
CulturalFeatureKindExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 11


RESQML Technical Reference Guide v2. 2

2.1 AbstractFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:1/1/2017 Status: Approved Author: Deny
Notes: Something that has physical existence at some point during the exploration,
development, production or abandonment of a reservoir. For example: It can be a
boundary, a rock volume, a basin area, but also extends to a drilled well, a drilling rig, an
injected or produced fluid, or a 2D, 3D, or 4D seismic survey.
Features are divided into these categories: geologic or technical.

Attributes
Name Type Notes
IsWellKnown boolean

Associations
Association Notes
From: AbstractFeature. To:
AbstractObject
From: AbstractTechnicalFeature. To:
AbstractFeature
From: Model. To: AbstractFeature
From: Indicates the feature that is interpreted by this
AbstractFeatureInterpretation.InterpretedFeat ure interpretation.
To: AbstractFeature
From: BoundaryFeature. To:
AbstractFeature
From: RockVolumeFeature. To:
AbstractFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 12


RESQML Technical Reference Guide v2. 2

2.2 AbstractTechnicalFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:10/21/2021 Status: Approved Author: deny
Notes: Objects that exist by the action of humans. Examples include: wells and all they may
contain, seismic surveys (surface, permanent water bottom), or injected fluid volumes.
Because the decision to deploy such equipment is the result of studies or decisions by
humans, technical features are usually not subject to the same kind of large changes in
interpretation as geologic features. However, they are still subject to measurement error
and other sources of uncertainty, and so still can be considered as subject to
“interpretation”.

Associations
Association Notes
From: AbstractTechnicalFeature. To:
AbstractFeature
From: AbstractRepresentation. To:
AbstractTechnicalFeature
From: AbstractSeismicSurveyFeature.
To: AbstractTechnicalFeature
From: StreamlinesFeature. To:
AbstractTechnicalFeature
From: CulturalFeature. To:
AbstractTechnicalFeature
From: WellboreFeature. To:
AbstractTechnicalFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 13


RESQML Technical Reference Guide v2. 2

2.3 BoundaryFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: An interface between two objects, such as horizons and faults. It is a surface object.
A RockVolumeFeature is a geological feature (which is the general concept that refers to
the various categories of geological objects that exist in the natural world).
For example: the stratigraphic boundaries, the =geobody boundaries or the fluid
boundaries that are present before production. To simplify the hierarchy of concepts, the
geological feature is not represented in the RESQML design.

Associations
Association Notes
From: BoundaryFeature. To:
AbstractFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 14


RESQML Technical Reference Guide v2. 2

2.4 CulturalFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/7/2012 Last modified:8/22/2018 Status: Approved Author: philippe
Notes: Identifies a frontier or boundary in the earth model that is not a geological feature but an
arbitrary geographic/geometric surface used to delineate the boundary of the model.

Attributes
Name Type Notes
CulturalFeatureKind CulturalFeatureKindExt

Associations
Association Notes
From: CulturalFeature. To:
CulturalFeatureKindExt
From: CulturalFeature. To:
AbstractTechnicalFeature
From: ProxyConnector. To:
CulturalFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 15


RESQML Technical Reference Guide v2. 2

2.5 CulturalFeatureKind
Type: Enumeration Stereotype:
Detail: Created: 8/22/2018 Last modified:7/24/2019 Status: Approved Author: philippe
Notes: The enumeration of the possible cultural feature.

Attributes
Name Type Notes
fieldblock
licenses
pipeline
project boundaries
model frontier

Associations
Association Notes
From: CulturalFeatureKind. To: TypeEnum
From: CulturalFeatureKindExt. To:
CulturalFeatureKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 16


RESQML Technical Reference Guide v2. 2

2.6 CulturalFeatureKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 8/22/2018 Last modified:8/22/2018 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: CulturalFeatureKindExt. To:
EnumExtensionPattern
From: CulturalFeatureKindExt. To:
CulturalFeatureKind
From: CulturalFeature. To:
CulturalFeatureKindExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 17


RESQML Technical Reference Guide v2. 2

2.7 Model
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: The explicit description of the relationships between geologic features, such as rock
features (e.g. stratigraphic units, geobodies, phase unit) and boundary features (e.g.,
genetic, tectonic, and fluid boundaries). In general, this concept is usually called an “earth
model”, but it is not called that in RESQML. In RESQML, model is not to be confused with
the concept of earth model organization interpretation.

Associations
Association Notes
From: Model. To: AbstractFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 18


RESQML Technical Reference Guide v2. 2

2.8 RockVolumeFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A continuous portion of rock material bounded by definite rock boundaries. It is a volume
object.
Some of these rock volumes are “static”, while others are “dynamic”. Reservoir fluids are
dynamic because their properties, geometries, and quantities may change over time
during the course of field production.
A RockVolume feature is a geological feature--which is the general concept that refers to
the various categories of geological objects that exist in the natural world, for example,
the rock volume or the fluids that are present before production. The geological feature is
not represented in the RESQML design.

Associations
Association Notes
From: RockVolumeFeature. To:
AbstractFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 19


RESQML Technical Reference Guide v2. 2

3 Geometry
Package: xsd_schemas

Notes: This package contains the classes used to define and exchanged geometry data in
RESQML. In general, geometry is attached to a representation with either a finite extent
or planes, which are infinite. However, when spatial locations need to be stored for
specific elements in a representation, then this information is stored similarly to properties
using property points.

«XSDcomplexType»
AbstractGeometry

«XSDcomplexType» «XSDcomplexType»
AbstractParametricLineGeometry AbstractParametricLineArray

«XSDcomplexType» «XSDcomplexType»
ParametricLineFromRepresentationGeometry ParametricLineFromRepresentationLatticeArray

«XSDelement» «XSDelement»
+ LineIndexOnSupportingRepresentation: NonNegativeLong + LineIndicesOnSupportingRepresentation: IntegerLatticeArray

AbstractObject
+SupportingRepresentation

«XSDcomplexType,XSDtopLevelElement»
+SupportingRepresentation
AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]
«XSDcomplexType» «XSDcomplexType»
ParametricLineGeometry «XSDcomplexType» ParametricLineArray
ParametricLineIntersections
«XSDelement» +ParametricLineIntersections «XSDelement»
+ ControlPointParameters: AbstractFloatingPointArray [0..1] «XSDelement» + ControlPointParameters: AbstractFloatingPointArray [0..1]
+ ControlPoints: AbstractPoint3dArray + Count: PositiveLong 0..1 + ControlPoints: AbstractPoint3dArray
+ KnotCount: PositiveLong + IntersectionLinePairs: AbstractIntegerArray + KnotCount: PositiveLong
+ ParameterValuePairs: AbstractValueArray
+ LineKindIndex: long + LineKindIndices: AbstractIntegerArray
+ TangentVectors: AbstractPoint3dArray [0..1] + TangentVectors: AbstractPoint3dArray [0..1]

«XSDcomplexType»
AbstractPoint3dArray

«XSDcomplexType»
Point3dParametricArray
«XSDcomplexType»
«XSDelement» Point3dFromRepresentationLatticeArray
+ Parameters: AbstractValueArray
+ ParametricLineIndices: AbstractIntegerArray [0..1] «XSDelement»
+ TruncatedLineIndices: AbstractIntegerArray [0..1] + NodeIndicesOnSupportingRepresentation: IntegerLatticeArray

«XSDcomplexType» «XSDcomplexType»
Point3dExternalArray Point3dLatticeArray
«XSDelement» «XSDelement» +SupportingRepresentation
+ Coordinates: ExternalDataArray + AllDimensionsAreOrthogonal: boolean [0..1]
+ Origin: Point3d AbstractObject
«XSDcomplexType» «XSDcomplexType,XSDtopLevelElement»
Point2dExternalArray +Dimension 1..* AbstractRepresentation
«XSDelement» «XSDcomplexType» «XSDelement»
+ Coordinates: ExternalDataArray Point3dLatticeDimension + RealizationIndex: PositiveLong [0..1]
+ParametricLines
«XSDelement» + RepresentedObject: DataObjectReference [0..1]
«XSDcomplexType» «XSDcomplexType» + Direction: Point3d
Point3dZValueArray AbstractParametricLineArray + Spacing: AbstractFloatingPointArray
«XSDcomplexType»
«XSDelement» Point3d
+ SupportingGeometry: AbstractPoint3dArray
+ ZValues: AbstractFloatingPointArray «XSDelement»
+ Coordinate1: double
+ Coordinate2: double
+ Coordinate3: double

Standard: v2.2 / Document: v1.0 / May 16, 2022 20


RESQML Technical Reference Guide v2. 2

«XSDcomplexType»
TimeIndex
+TimeIndex
AbstractObject «XSDcomplexType» «XSDelement»
«XSDcomplexType» 0..1
«XSDcomplexType,XSDtopLevelElement» Graph2dRepresentation AbstractGeometry + Index: NonNegativeLong
AbstractRepresentation
«XSDelement» +LocalCrs
«XSDelement» + Edges: AbstractIntegerArray AbstractCompoundCrs
+ RealizationIndex: PositiveLong [0..1] + isDirected: boolean «XSDcomplexType,XSDtopLevelElem...
+ RepresentedObject: DataObjectReference [0..1] LocalEngineeringCompoundCrs
+SeismicSupport
«XSDelement»
«XSDcomplexType» + OriginVerticalCoordinate: double
«XSDcomplexType» SinglePointGeometry
AbstractSeismicCoordinates
«XSDelement»
+ Point3d: Point3d
0..1
+SeismicCoordinates

«XSDcomplexType» «XSDcomplexType»
Seismic2dCoordinates Seismic3dCoordinates
«XSDelement» «XSDelement»
+ LineAbscissa: AbstractFloatingPointArray + CrosslineCoordinates: AbstractFloatingPointArray
+ VerticalCoordinates: AbstractFloatingPointArray [0..1] + InlineCoordinates: AbstractFloatingPointArray
+ VerticalCoordinates: AbstractFloatingPointArray [0..1]

+Geometry 1

«XSDcomplexType» «XSDcomplexType» «XSDcomplexType»


PointGeometry AbstractParametricLineGeometry AbstractPlaneGeometry

«XSDelement»
+ Points: AbstractPoint3dArray

«XSDcomplexType»
AdditionalGridPoints
+AdditionalGridPoints «XSDcomplexType»
«XSDelement» AbstractGridGeometry «XSDcomplexType»
+ Attachment: GridGeometryAttachment HorizontalPlaneGeometry «XSDcomplexType»
0..*
+ Points: AbstractPoint3dArray TiltedPlaneGeometry
+ RepresentationPatchIndex: NonNegativeLong [0..1] «XSDelement»
+ Coordinate: double
string
«enumeration»
GridGeometryAttachment «XSDcomplexType» +Plane 1..*
AbstractColumnLayerGridGeometry
cells «XSDcomplexType»
edges «XSDelement» ThreePoint3d
faces + CellGeometryIsDefined: AbstractBooleanArray [0..1]
hinge node faces + KDirection: KDirection «XSDelement»
nodes + NodeIsColocatedInKDirection: AbstractBooleanArray [0..1] + Point3d: Point3d [3]
radial origin polyline + NodeIsColocatedOnKEdge: AbstractBooleanArray [0..1]
subnodes + PillarGeometryIsDefined: AbstractBooleanArray
+ PillarShape: PillarShape

«XSDcomplexType» «XSDcomplexType» «XSDcomplexType»


UnstructuredGridGeometry UnstructuredColumnLayerGridGeometry IjkGridGeometry
«XSDelement» «XSDelement» «XSDelement»
+ CellFaceIsRightHanded: AbstractBooleanArray + ColumnIsRightHanded: AbstractBooleanArray + GridIsRighthanded: boolean
+ CellShape: CellShape + ColumnShape: ColumnShape
+ FaceCount: PositiveLong + PillarCount: PositiveLong
+ FacesPerCell: JaggedArray + PillarsPerColumn: JaggedArray
+ NodeCount: PositiveLong
+ NodesPerFace: JaggedArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 21


RESQML Technical Reference Guide v2. 2

3.1 AbstractGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/21/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: The base class for all geometric values, which is always associated with a
representation.

Associations
Association Notes
From: AbstractGeometry.TimeIndex
0..1 To: TimeIndex
From: AbstractGeometry.LocalCrs
To: LocalEngineeringCompoundCrs
From: SinglePointGeometry. To:
AbstractGeometry
From: AbstractPlaneGeometry. To:
AbstractGeometry
From: AbstractParametricLineGeometry.
To: AbstractGeometry
From: NonSealedContact.Geometry
0..1 To: AbstractGeometry
From: PointGeometry. To: AbstractGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 22


RESQML Technical Reference Guide v2. 2

3.2 AbstractParametricLineArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Defines an array of parametric lines.

The array size is obtained from context. In the current schema, this may be as simple as
a 1D array (#Lines=count) or a 2D array #Lines = NIL x NJL for an IJK grid
representation.

Associations
Association Notes
From:
ParametricLineFromRepresentationLatticeArray.
To: AbstractParametricLineArray
From: ParametricLineArray. To:
AbstractParametricLineArray
From: Point3dParametricArray.ParametricLines
To: AbstractParametricLineArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 23


RESQML Technical Reference Guide v2. 2

3.3 AbstractParametricLineGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/27/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: The abstract class for defining a single parametric line.

Associations
Association Notes
From: AbstractParametricLineGeometry.
To: AbstractGeometry
From: ParametricLineGeometry. To:
AbstractParametricLineGeometry
From:
WellboreTrajectoryRepresentation.Geometry
0..1 To: AbstractParametricLineGeometry
From:
ParametricLineFromRepresentationGeometry.
To: AbstractParametricLineGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 24


RESQML Technical Reference Guide v2. 2

3.4 AbstractPlaneGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/13/2013 Last modified:11/1/2016 Status: Approved Author: Mathieu /JFR
Notes: The abstract class for all geometric values defined by planes.

Associations
Association Notes
From: AbstractPlaneGeometry. To:
AbstractGeometry
From: HorizontalPlaneGeometry. To:
AbstractPlaneGeometry
From: TiltedPlaneGeometry. To:
AbstractPlaneGeometry
From: PlaneSetRepresentation.Planes
1..* To: AbstractPlaneGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 25


RESQML Technical Reference Guide v2. 2

3.5 AbstractPoint3dArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2012 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: The abstract class of 3D points implemented in a single fashion for the schema.
Abstraction allows a variety of instantiations for efficiency or to implicitly provide
additional geometric information about a data-object. For example, parametric points can
be used to implicitly define a wellbore trajectory using an underlying parametric line, by
the specification of the control points along the parametric line.

The dimensionality of the array of 3D points is based on context within an instance.

Associations
Association Notes
From: Point3dParametricArray. To:
AbstractPoint3dArray
From: Point3dLatticeArray. To:
AbstractPoint3dArray
From: Point2dExternalArray. To:
AbstractPoint3dArray
From:
Point3dFromRepresentationLatticeArray. To:
AbstractPoint3dArray
From: Point3dZValueArray. To:
AbstractPoint3dArray
From: Point3dExternalArray. To:
AbstractPoint3dArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 26


RESQML Technical Reference Guide v2. 2

3.6 Graph2dRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2018 Last modified:8/22/2018 Status: Approved Author: deny /JFR
Notes: The geometry of a single point defined by its location in the local CRS.

Attributes
Name Type Notes
Edges AbstractIntegerArray
isDirected boolean

Associations
Association Notes
From: Graph2dRepresentation.Geometry
1 To: PointGeometry
From: Graph2dRepresentation. To:
AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 27


RESQML Technical Reference Guide v2. 2

3.7 HorizontalPlaneGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/3/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Defines the infinite geometry of a horizontal plane provided by giving its unique Z value.

Attributes
Name Type Notes
Coordinate double

Associations
Association Notes
From: HorizontalPlaneGeometry. To:
AbstractPlaneGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 28


RESQML Technical Reference Guide v2. 2

3.8 ParametricLineArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/30/2014 Last modified:9/28/2021 Status: Approved Author: mike.king
Notes: Defines an array of parametric lines of multiple kinds.
For more information, see the RESQML Technical Usage Guide.
In general, a parametric line is unbounded so the interpolant in the first or last interval is used as an
extrapolating function.

Special Cases:
(1) Natural cubic splines with only two control points reduce to linear interpolation.
(2) If required but not defined, tangent vectors at a spline knot are calculated from the
control point data using a quadratic fit to the control point and the two adjacent control
points (if internal) or, if at an edge, by a vanishing second derivative. This calculation
reduces locally to a natural spline.
(3) If not expected but provided, then extraneous information is to be ignored, e.g.,
tangent vectors for linear splines.

Vertical:
(1) Control points are (X,Y,-).
(2) Parameter values are interpreted as depth => (X,Y,Z), where the depth to Z
conversion depends on the vertical CRS direction.

Piecewise Linear:
(1) Control points are (P,X,Y,Z).
(2) Piecewise interpolation in (X,Y,Z) as a linear function of P.

Natural Cubic:
(1) Control points are (P,X,Y,Z).
(2) First and second derivatives at each knot are inferred from a quadratic fit to the two
adjacent control points, if internal, or, if external knots, by specifying a vanishing second
derivative.

Tangential Cubic and Minimum-Curvature.


(1) Control points are (P,X,Y,Z).
(2) Tangent vectors are (P,TX,TY,TZ). Tangent vectors are defined as the derivative of
position with respect to the parameter. If the parameter is arc-length, then the tangent
vectors are unit vectors, but not otherwise.
(3) Interpolating minimum-curvature basis functions obtained by a circular arc
construction. This differs from the "drilling" algorithm in which the parameter must be arc
length.

Z Linear Cubic:
(1) (X,Y) follow a natural cubic spline and Z follows a linear spline.
(2) On export, to go from Z to P, the RESQML "software writer" first needs to determine
the interval and then uses linearity in Z to determine P.
(3) On import, a RESQML "software reader" converts from P to Z using piecewise linear
interpolation, and from P to X and Y using natural cubic spline interpolation. Other than
the differing treatment of Z from X and Y, these are completely generic interpolation
algorithms.
(4) The use of P instead of Z for interpolation allows support for over-turned reservoir
structures and removes any apparent discontinuities in parametric derivatives at the
spline knots.

Standard: v2.2 / Document: v1.0 / May 16, 2022 29


RESQML Technical Reference Guide v2. 2

Attributes
Name Type Notes
An array of explicit control point
parameters for all of the control points on
each of the parametric lines.
If you cannot provide enough control point
ControlPointParameters AbstractFloatingPointArray parameters for a parametric line, then pad
with NaN values.
BUSINESS RULE: The parametric values
must be strictly monotonically increasing
on each parametric line.
An array of 3D points for all of the control
points on each of the parametric lines. The
number of control points per line is given
by the KnotCount.
ControlPoints AbstractPoint3dArray Control points are ordered by lines going
fastest, then by knots going slowest.
If you cannot provide enough control
points for a parametric line, then pad with
NaN values.
The first dimension of the control point,
control point parameter, and tangent
vector arrays for the parametric splines.
The Knot Count is typically chosen to be
KnotCount PositiveLong
the maximum number of control points,
parameters or tangent vectors on any
parametric line in the array of parametric
lines.
An array of integers indicating the
parametric line kind.

0 = vertical
1 = linear spline
2 = natural cubic spline
LineKindIndices AbstractIntegerArray
3 = tangential cubic spline
4 = Z linear cubic spline
5 = minimum-curvature spline
null value: no line

Size = #Lines, e.g., (1D or 2D)

Standard: v2.2 / Document: v1.0 / May 16, 2022 30


RESQML Technical Reference Guide v2. 2

An optional array of tangent vectors for all


of the control points on each of the
tangential cubic and minimum-curvature
parametric lines. Used only if tangent
vectors are present.
The number of tangent vectors per line is
given by the KnotCount for these spline
types.

Described as a 1D array, the tangent


vector array is divided into segments of
length Knot Count, with null (NaN) values
added to each segment to fill it up.

Size = Knot Count x #Lines, e.g., 2D or 3D


TangentVectors AbstractPoint3dArray
BUSINESS RULE: For all lines other than
the cubic and minimum-curvature
parametric lines, this array should not
appear. For these line kinds, there should
be one tangent vector for each control
point.

If a tangent vector is missing, then it is


computed in the same fashion as for a
natural cubic spline. Specifically, to obtain
the tangent at internal knots, the control
points are fit by a quadratic function with
the two adjacent control points. At edge
knots, the second derivative vanishes.

Associations
Association Notes
From: ParametricLineArray. To:
AbstractParametricLineArray
From:
ParametricLineArray.ParametricLineIntersections
0..1 To: ParametricLineIntersections

Standard: v2.2 / Document: v1.0 / May 16, 2022 31


RESQML Technical Reference Guide v2. 2

3.9 ParametricLineFromRepresentationGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/16/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: The parametric line extracted from an existing representation.

BUSINESS RULE: The supporting representation must have pillars or lines as indexable elements.

Attributes
Name Type Notes
The line index of the selected line in the
supporting representation.
LineIndexOnSupportingRepresentation NonNegativeLong
For a column-layer grid, the parametric
lines follow the indexing of the pillars.

Associations
Association Notes
From:
ParametricLineFromRepresentationGeometry.Supporti
ngRepresentation
To: AbstractRepresentation
From:
ParametricLineFromRepresentationGeometry.
To: AbstractParametricLineGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 32


RESQML Technical Reference Guide v2. 2

3.10 ParametricLineFromRepresentationLatticeArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/29/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: The lattice array of parametric lines extracted from an existing representation.

BUSINESS RULE: The supporting representation must have pillars or lines as indexable elements.

Attributes
Name Type Notes
The line indices of the selected lines in the
supporting representation. The index
selection is regularly incremented from
one node to the next node.

BUSINESS RULE: The dimensions of the


integer lattice array must be consistent
with the dimensions of the supporting
representation.
LineIndicesOnSupportingRepresentation IntegerLatticeArray
For a column-layer grid, the parametric
lines follow the indexing of the pillars.

BUSINESS RULE: The start value of the


integer lattice array must be the linearized
index of the starting line.
Example: iStart + ni * jStart in case of a
supporting 2D grid.

Associations
Association Notes
From:
ParametricLineFromRepresentationLatticeArray.
To: AbstractParametricLineArray
From:
ParametricLineFromRepresentationLatticeArray.Supp
ortingRepresentation
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 33


RESQML Technical Reference Guide v2. 2

3.11 ParametricLineGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/16/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Defines a parametric line of any kind.

For more information on the supported parametric lines, see ParametricLineArray.

Attributes
Name Type Notes
An array of explicit control point
parameters for the control points on the
parametric line.
BUSINESS RULE: The size MUST match
ControlPointParameters AbstractFloatingPointArray
the number of control points.
BUSINESS RULE: The parametric values
MUST be strictly monotonically increasing
on the parametric line.
An array of 3D points for the control points
ControlPoints AbstractPoint3dArray
on the parametric line.
Number of spline knots in the parametric
KnotCount PositiveLong
line.
Integer indicating the parametric line kind

0 for vertical
1 for linear spline
LineKindIndex long 2 for natural cubic spline
3 for cubic spline
4 for z linear cubic spline
5 for minimum-curvature spline
(-1) for null: no line
An optional array of tangent vectors for
each control point on the cubic and
minimum-curvature parametric lines. Used
only if tangent vectors are present.

If a tangent vector is missing, then it is


TangentVectors AbstractPoint3dArray
computed in the same fashion as for a
natural cubic spline. Specifically, to obtain
the tangent at internal knots, the control
points are fit by a quadratic function with
the two adjacent control points. At edge
knots, the second derivative vanishes.

Associations
Association Notes
From: ParametricLineGeometry. To:
AbstractParametricLineGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 34


RESQML Technical Reference Guide v2. 2

3.12 ParametricLineIntersections
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2012 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to specify the intersections between parametric lines. This information is purely
geometric and is not required for the evaluation of the parametric point locations on these
lines. The information required for that purpose is stored in the parametric points array.

Attributes
Name Type Notes
Number of parametric line intersections.
Count PositiveLong
Must be positive.
Intersected line index pair for (line 1, line
2).
IntersectionLinePairs AbstractIntegerArray
Size = 2 x count
Intersected line parameter value pairs for
(line 1, line 2).
ParameterValuePairs AbstractValueArray
Size = 2 x count

Associations
Association Notes
From:
ParametricLineArray.ParametricLineIntersections
0..1 To: ParametricLineIntersections

Standard: v2.2 / Document: v1.0 / May 16, 2022 35


RESQML Technical Reference Guide v2. 2

3.13 Point2dExternalArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/25/2014 Last modified:6/16/2017 Status: Approved Author: deny
Notes: An array of explicit XY points stored as two coordinates in an HDF5 dataset. If needed,
the implied Z coordinate is uniformly 0.

Attributes
Name Type Notes
Reference to an HDF5 2D dataset of XY
points. The 2 coordinates are stored
Coordinates ExternalDataArray sequentially in HDF5, i.e., a multi-
dimensional array of points is stored as a 2
x ... HDF5 array.

Associations
Association Notes
From: Point2dExternalArray. To:
AbstractPoint3dArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 36


RESQML Technical Reference Guide v2. 2

3.14 Point3d
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/17/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Defines a point using coordinates in 3D space.

Attributes
Name Type Notes
Coordinate1 double X coordinate
Coordinate2 double Y coordinate
Coordinate3 double Either Z or T coordinate

Standard: v2.2 / Document: v1.0 / May 16, 2022 37


RESQML Technical Reference Guide v2. 2

3.15 Point3dExternalArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2012 Last modified:6/16/2017 Status: Approved Author: deny
Notes: An array of explicit XYZ points stored as three coordinates in an HDF5 dataset.

Attributes
Name Type Notes
Reference to an HDF5 3D dataset of XYZ
points. The 3 coordinates are stored
Coordinates ExternalDataArray sequentially in HDF5, i.e., a multi-
dimensional array of points is stored as a 3
x ... HDF5 array.

Associations
Association Notes
From: Point3dExternalArray. To:
AbstractPoint3dArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 38


RESQML Technical Reference Guide v2. 2

3.16 Point3dFromRepresentationLatticeArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/4/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: A lattice array of points extracted from an existing representation.

BUSINESS RULE: The supporting representation must have nodes as indexable elements.

Attributes
Name Type Notes
The node indices of the selected nodes in
the supporting representation. The index
selection is regularly incremented from
one node to the next node.
NodeIndicesOnSupportingRepresentation IntegerLatticeArray
BUSINESS RULE: The node indices must
be consistent with the size of supporting
representation.

Associations
Association Notes
From:
Point3dFromRepresentationLatticeArray. To:
AbstractPoint3dArray
From: BUSINESS RULE: The target root representation must
Point3dFromRepresentationLatticeArray.SupportingRe have nodes as indexable elements.
presentation
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 39


RESQML Technical Reference Guide v2. 2

3.17 Point3dLatticeArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/5/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Describes a lattice array of points obtained by sampling from along a multi-dimensional
lattice. Each dimension of the lattice can be uniformly or irregularly spaced.

Attributes
Name Type Notes
The optional element that indicates that
the offset vectors for each direction are
mutually orthogonal to each other. This
meta-information is useful to remove any
doubt of orthogonality in case of numerical
AllDimensionsAreOrthogonal boolean
precision issues.

BUSINESS RULE: If you don't know it or if


only one lattice dimension is given, do not
provide this element.
The origin location of the lattice given as
Origin Point3d
XYZ coordinates.

Associations
Association Notes
From: Point3dLatticeArray. To:
AbstractPoint3dArray
From: Point3dLatticeArray.Dimension Defines one axis of the lattice. The first given axis
1..* To: Point3dLatticeDimension corresponds to the first dimension/axis of the lattice
which is the slowest dimension in I/O operation
context, the second given axis corresponds to the
second dimension/axis of the lattice which is quicker
than the previous dimension, etc.

Standard: v2.2 / Document: v1.0 / May 16, 2022 40


RESQML Technical Reference Guide v2. 2

3.18 Point3dLatticeDimension
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:2/7/2019 Status: Approved Author: deny
Notes: Defines the size and sampling in each dimension (direction) of the point 3D lattice array.
Sampling can be uniform or irregular.

Attributes
Name Type Notes
The direction of the axis of this lattice
Direction Point3d dimension. This is a relative offset vector
instead of an absolute 3D point.
A lattice of N offset points is described by
a spacing array of size N-1. The offset
between points is given by the spacing
value multiplied by the offset vector. For
Spacing AbstractFloatingPointArray
example, the first offset is 0. The second
offset is the first spacing * offset. The
second offset is (first spacing + second
spacing) * offset, etc.

Associations
Association Notes
From: Point3dLatticeArray.Dimension Defines one axis of the lattice. The first given axis
1..* To: Point3dLatticeDimension corresponds to the first dimension/axis of the lattice
which is the slowest dimension in I/O operation
context, the second given axis corresponds to the
second dimension/axis of the lattice which is quicker
than the previous dimension, etc.

Standard: v2.2 / Document: v1.0 / May 16, 2022 41


RESQML Technical Reference Guide v2. 2

3.19 Point3dParametricArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2012 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: A parametric specification of an array of XYZ points.

Attributes
Name Type Notes
A multi-dimensional array of parametric
values that implicitly specifies an array of
XYZ points.

The parametric values provided in this


data-object must be consistent with the
parametric values specified in the
Parameters AbstractValueArray
referenced parametric line array.

When constructing a column-layer grid


geometry using parametric points, the
array indexing follows the dimensionality of
the coordinate lines x NKL, which is either
a 2D or 3D array.
An optional array of indices that map from
the array index to the index of the
corresponding parametric line.
If this information is known from context,
then this array is not needed. For example,
in either of these cases:
(1) If the mapping from array index to
parametric line is 1:1.
ParametricLineIndices AbstractIntegerArray
(2) If the mapping has already been
specified, as with the pillar Index from the
column-layer geometry of a grid.

For example, when constructing a column-


layer grid geometry using parametric lines,
the array indexing follows the
dimensionality of the coordinate lines.
A 2D array of line indices for use with
intersecting parametric lines. Each record
consists of a single line index, which
indicates the array line that uses this
truncation information, followed by the
parametric line indices for each of the
TruncatedLineIndices AbstractIntegerArray points on that line.

For a non-truncated line, the equivalent


record repeats the array line index NKL+1
times.

Size = (NKL+1) x truncatedLineCount

Associations

Standard: v2.2 / Document: v1.0 / May 16, 2022 42


RESQML Technical Reference Guide v2. 2

Association Notes
From: Point3dParametricArray. To:
AbstractPoint3dArray
From: Point3dParametricArray.ParametricLines
To: AbstractParametricLineArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 43


RESQML Technical Reference Guide v2. 2

3.20 Point3dZValueArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/4/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: An array of points defined by applying a Z value on top of an existing array of points,
XYZ, where Z is ignored. Used in these cases:
• in 2D for defining geometry of one patch of a 2D grid representation.
for extracting nodal geometry from one grid representation for use in another.

Attributes
Name Type Notes
Geometry defining the X and Y
SupportingGeometry AbstractPoint3dArray
coordinates.
ZValues AbstractFloatingPointArray The values for Z coordinates

Associations
Association Notes
From: Point3dZValueArray. To:
AbstractPoint3dArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 44


RESQML Technical Reference Guide v2. 2

3.21 PointGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/5/2012 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: The geometry of a set of points defined by their location in the local CRS, with optional
seismic coordinates.

Attributes
Name Type Notes
Points AbstractPoint3dArray

Associations
Association Notes
From: PointGeometry.SeismicCoordinates
0..1 To: AbstractSeismicCoordinates
From: PointGeometry. To: AbstractGeometry
From:
PointSetRepresentation.NodePatchGeometry
1..* To: PointGeometry
From: AbstractGridGeometry. To:
PointGeometry
From:
PolylineRepresentation.NodePatchGeometry
1 To: PointGeometry
From: Grid2dRepresentation.Geometry
To: PointGeometry
From: Graph2dRepresentation.Geometry
1 To: PointGeometry
From: TrianglePatch.Geometry
To: PointGeometry
From: PolylineSetPatch.Geometry
To: PointGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 45


RESQML Technical Reference Guide v2. 2

3.22 SinglePointGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/9/2014 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: The geometry of a single point defined by its location in the local CRS.

Attributes
Name Type Notes
Point3d Point3d

Associations
Association Notes
From: SinglePointGeometry. To:
AbstractGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 46


RESQML Technical Reference Guide v2. 2

3.23 ThreePoint3d
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/6/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: List of three 3D points.

Attributes
Name Type Notes
Point3d Point3d

Associations
Association Notes
From: TiltedPlaneGeometry.Plane One list of 3 points per tilted plane patch.
1..* To: ThreePoint3d Because there is no corresponding topology patch on
a horizontal plane, the order of the points does not
matter.

Standard: v2.2 / Document: v1.0 / May 16, 2022 47


RESQML Technical Reference Guide v2. 2

3.24 TiltedPlaneGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Describes the geometry of a tilted (or potentially not tilted) plane from three points.

Associations
Association Notes
From: TiltedPlaneGeometry.Plane One list of 3 points per tilted plane patch.
1..* To: ThreePoint3d Because there is no corresponding topology patch on
a horizontal plane, the order of the points does not
matter.
From: TiltedPlaneGeometry. To:
AbstractPlaneGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 48


RESQML Technical Reference Guide v2. 2

4 GraphicalInformationObject
Package: xsd_schemas

Notes: Schemas for graphical information. Provides the ability to supply graphical style
information with energyML data objects (specifically RESQML objects) as a part of a data
transfer. Scope covers all geometries. Non-invasive (has its own top-level data object)
and optional. Color maps are also included. The design leverages CSS and SVG.

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
ColorMapDictionary

+ColorMap
«byValue» 0..*

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
AbstractColorMap

TypeEnum
«enumeration»
InterpolationDomain
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
DiscreteColorMap ContinuousColorMap hsv
rgb
«XSDelement»
+ InterpolationDomain: InterpolationDomain
+ InterpolationMethod: InterpolationMethod

TypeEnum
«enumeration»
+Entry 1..* +Entry 2..*
InterpolationMethod
«XSDcomplexType» «XSDcomplexType» linear
DiscreteColorMapEntry ContinuousColorMapEntry logarithmic
«XSDelement» «XSDelement»
+ index: long + Index: double

+BelowMinColor +AboveMaxColor +NullColor


0..1 0..1 0..1

«XSDcomplexType»
HsvColor

+Hsv
«XSDelement»
+Hsv
1 + Alpha: double
1
+ Hue: double
+ Saturation: double
+ Title: string [0..1]
+ Value: double

Standard: v2.2 / Document: v1.0 / May 16, 2022 49


RESQML Technical Reference Guide v2. 2

TypeEnum TypeEnum string


«enumeration» «enumeration» «enumeration»
ViewerKind EdgePattern NodeSymbol
3d dashed circle
base map dotted cross
section solid cube
well correlation wavy diamond
plus
point
pyramid
sphere
EnumExtensionPattern EnumExtensionPattern star
tetrahedron
«XSDunion» «XSDunion»
ViewerKindExt EdgePatternExt

EnumExtensionPattern
«XSDunion»
NodeSymbolExt

«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType» GraphicalInformation::GraphicalInformationSet
Abstract::AbstractObject

+GraphicalInformation «XSDcomplexTyp...
0..*
MinMax
+TargetObject
«XSDcomplexType» «XSDelement»
1..*
GraphicalInformation:: + Maximum: double
+ Minimum: double
AbstractGraphicalInformation

«XSDcomplexType»
ColorInformation «XSDcomplexType» «XSDcomplexType» «XSDcomplexType» «XSDcomplexType»
AlphaInformation SizeInformation DefaultGraphicalInformation ContourLineSetInformation
«XSDcomplexType»
«XSDelement» AnnotationInformation
+ MinMax: MinMax [0..1] «XSDelement» «XSDelement» «XSDelement» «XSDelement»
+ UseLogarithmicMapping: boolean + Alpha: double [2..-1] + MinMax: MinMax [0..1] + ViewerId: string [0..1] + DisplayLabelOnMajorLine: boolean [0..1]
«XSDelement»
+ UseReverseMapping: boolean + Index: string [2..-1] + UseLogarithmicMapping: boolean + ViewerKind: ViewerKindExt + DisplayLabelOnMinorLine: boolean [0..1]
+ ShowAnnotationEvery: long
+ ValueVectorIndex: long [0..1] + MinMax: MinMax [0..1] + UseReverseMapping: boolean + Increment: double [0..1]
+ ValueVectorIndices: string [1..-1]
+ OverwriteColorAlpha: boolean + ValueVectorIndex: long [0..1] + MajorLineGraphicalInformation: GraphicalInformationForEdges [0..1]
+ UseLogarithmicMapping: boolean + MinorLineGraphicalInformation: GraphicalInformationForEdges [0..1]
+ UseReverseMapping: boolean + ShowMajorLineEvery: long [0..1]
+ ValueVectorIndex: long [0..1] + ValueVectorIndex: long [0..1]
+ColorMap
0..1
+IndexableElementInfo 1..*
«XSDcomplexType,XSDtopLevelElement» +ColorMap «XSDcomplexType,XSDtopLevelEleme...
AbstractColorMap «byValue» ColorMapDictionary «XSDcomplexType»
AbstractGraphicalInformationForIndexableElement
0..* «XSDelement»
+ ActiveAlphaInformationIndex: long [0..1]
+ ActiveAnnotationInformationIndex: long [0..1]
+ ActiveColorInformationIndex: long [0..1]
+ ActiveSizeInformationIndex: long [0..1]
+ ConstantAlpha: double [0..1]
+ IsVisible: boolean
+ OverwriteColorAlpha: boolean [0..1]

«XSDcomplexType,XSDtopLevelEl... «XSDcomplexType,XSDtopLevelElement»
DiscreteColorMap ContinuousColorMap

«XSDelement»
+ InterpolationDomain: InterpolationDomain
+ InterpolationMethod: InterpolationMethod «XSDcomplexType» «XSDcomplexType»
«XSDcomplexType»
GraphicalInformationForEdges GraphicalInformationForFaces GraphicalInformationForNodes
TypeEnum
«XSDelement» «XSDelement» «XSDelement»
+Entry 1..* +Entry 2..* «enumeration»
+ DisplaySpace: DisplaySpace [0..1] + AppliesOnRightHandedFace: boolean [0..1] + ConstantSize: LengthMeasureExt [0..1]
DisplaySpace
«XSDcomplexType» «XSDcomplexType» + Pattern: EdgePatternExt [0..1] + UseInterpolationBetweenNodes: boolean [0..1] + DisplaySpace: DisplaySpace [0..1]
DiscreteColorMapEntry ContinuousColorMapEntry device + Thickness: LengthMeasureExt [0..1] + ShowSymbolEvery: long [0..1]
model + UseInterpolationBetweenNodes: boolean [0..1] + Symbol: NodeSymbolExt [0..1]
«XSDelement» «XSDelement»
+ index: long + Index: double

«XSDcomplexType» «XSDcomplexType»
GraphicalInformationForVolumes GraphicalInformationForWholeObject

«XSDelement» «XSDelement»
+ UseInterpolationBetweenNodes: boolean [0..1] + ActiveContourLineSetInformationIndex: long [0..1]
+ DisplayTitle: boolean [0..1]

+NullColor
+AboveMaxColor+BelowMinColor
0..1 0..1
0..1
«XSDcomplexType»
HsvColor
1
«XSDelement»
+Hsv
+ Alpha: double
+Hsv + Hue: double 0..1
+ Saturation: double
1
+ Title: string [0..1]
+ Value: double +ConstantColor

Standard: v2.2 / Document: v1.0 / May 16, 2022 50


RESQML Technical Reference Guide v2. 2

4.1 AbstractColorMap
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/22/2019 Last modified:7/22/2019 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: AbstractColorMap.BelowMinColor The color to use for values that are below (i.e., inferior
0..1 To: HsvColor to) the minimum value of the color map.
From: AbstractColorMap. To:
AbstractObject
From: AbstractColorMap.NullColor The color to use for null values.
0..1 To: HsvColor
From: AbstractColorMap.AboveMaxColor The color to use for values that are above (i.e.,
0..1 To: HsvColor superior to) the maximum value of the color map.
From: DiscreteColorMap. To:
AbstractColorMap
From: ColorInformation.ColorMap The color map associated to this color information.
0..1 To: AbstractColorMap
From: ContinuousColorMap. To:
AbstractColorMap
From: ColorMapDictionary.ColorMap The contained color maps.
0..* To: AbstractColorMap

Standard: v2.2 / Document: v1.0 / May 16, 2022 51


RESQML Technical Reference Guide v2. 2

4.2 AbstractGraphicalInformationForIndexableElement
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Some general attributes for graphical information applied on some particular indexable
elements.

Attributes
Name Type Notes
ActiveAlphaInformationIndex long Index into the graphical information set.
ActiveAnnotationInformationIndex long Index into the graphical information set
ActiveColorInformationIndex long Index into the graphical information set
ActiveSizeInformationIndex long Index into the graphical information set
It multiplies the opacity of the color map.
ConstantAlpha double If defined, then AlphaInformation cannot
be defined.
Indicates if this graphical information is
IsVisible boolean intended to be visible or only
stored/transferred.
If both ConstantAlpha and either
ConstantColor or ColorInformation are
defined, then setting this field to true will
OverwriteColorAlpha boolean indicate that the ConstantAlpha must be
used instead of the ConstantColor or
ColorInformation alpha(s). Else the
product of the two alpha should be used.

Associations
Association Notes
From: The constant color to apply to the indexable element.
AbstractGraphicalInformationForIndexableElement.C
onstantColor
0..1 To: HsvColor
From: Graphical information for one or more particular
DefaultGraphicalInformation.IndexableElementInfo indexable elements.
1..* To:
AbstractGraphicalInformationForIndexableElement
From: GraphicalInformationForNodes.
To:
AbstractGraphicalInformationForIndexableElement
From: GraphicalInformationForFaces.
To:
AbstractGraphicalInformationForIndexableElement
From: GraphicalInformationForWholeObject.
To:
AbstractGraphicalInformationForIndexableElement
From: GraphicalInformationForEdges.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 52


RESQML Technical Reference Guide v2. 2

Association Notes
From: GraphicalInformationForVolumes.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 53


RESQML Technical Reference Guide v2. 2

4.3 AlphaInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Jay Hollingsworth
Notes: Used for continuous properties and property k inds and for geometry. In the latter case,
we need to point to the representation.

Attributes
Name Type Notes
Count equals to entry count.
Alpha double
It multiplies the opacity of the color map.
Index string Count equals to opacity count.
MinMax MinMax
If both Alpha and either ConstantColor or
ColorInformation are defined, then setting
this field to true will indicate that the Alpha
OverwriteColorAlpha boolean
must be used instead of the ConstantColor
or ColorInformation alpha(s). Else the
product of the two alpha should be used.
Indicates that the log of the property
UseLogarithmicMapping boolean values are taken into account when
mapped with the index of the color map.
Indicates that the minimum value of the
property corresponds to the maximum
index of the color map and that the
UseReverseMapping boolean
maximum value of the property
corresponds to the minimum index of the
color map.
Especially useful for vector property and
ValueVectorIndex long
for geometry.

Associations
Association Notes
From: AlphaInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 54


RESQML Technical Reference Guide v2. 2

4.4 AnnotationInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Jay Hollingsworth
Notes: Used for properties and property k inds and for geometry. In the latter case, we need to
point to the representation.

Attributes
Name Type Notes
Shows the annotation (i.e., the value) on
ShowAnnotationEvery long some of the indexable element on a
regular basis.
Especially useful for vector property and
ValueVectorIndices string
for geometry.

Associations
Association Notes
From: AnnotationInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 55


RESQML Technical Reference Guide v2. 2

4.5 ColorInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Philippe
Notes: Used for properties and property k inds and for geometry. In the latter case, we need to
point to the representation.

Attributes
Name Type Notes
This is the range of values of the
associated property which will result in the
minimum color and the maximum color.
MinMax MinMax This is not necessarily the entire range of
values of the data - data outside this range
will continue to have the extreme color
from this range.
Indicates that the log of the property
UseLogarithmicMapping boolean values are taken into account when
mapped with the index of the color map.
Indicates that the minimum value of the
property corresponds to the maximum
index of the color map and that the
UseReverseMapping boolean
maximum value of the property
corresponds to the minimum index of the
color map.
Especially useful for vectorial property and
ValueVectorIndex long
for geometry.

Associations
Association Notes
From: ColorInformation.ColorMap The color map associated to this color information.
0..1 To: AbstractColorMap
From: ColorInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 56


RESQML Technical Reference Guide v2. 2

4.6 ColorMapDictionary
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A container for color maps.

Associations
Association Notes
From: ColorMapDictionary.ColorMap The contained color maps.
0..* To: AbstractColorMap
From: ColorMapDictionary. To:
AbstractObject

Standard: v2.2 / Document: v1.0 / May 16, 2022 57


RESQML Technical Reference Guide v2. 2

4.7 ContinuousColorMap
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A color map associating a double value to a color.

Attributes
Name Type Notes
The domain for the interpolation between
InterpolationDomain InterpolationDomain
color map entries.
The method for the interpolation between
InterpolationMethod InterpolationMethod
color map entries.

Associations
Association Notes
From: ContinuousColorMap.Entry The contained “double to color” associations.
2..* To: ContinuousColorMapEntry
From: ContinuousColorMap. To:
InterpolationMethod
From: ContinuousColorMap. To:
AbstractColorMap
From: ContinuousColorMap. To:
InterpolationDomain

Standard: v2.2 / Document: v1.0 / May 16, 2022 58


RESQML Technical Reference Guide v2. 2

4.8 ContinuousColorMapEntry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: An association between a single double value and a color.

Attributes
Name Type Notes
The double value to be associated with a
Index double
particular color.

Associations
Association Notes
From: ContinuousColorMapEntry.Hs v The color that is associated with a particular double
1 To: HsvColor value.
From: ContinuousColorMap.Entry The contained “double to color” associations.
2..* To: ContinuousColorMapEntry

Standard: v2.2 / Document: v1.0 / May 16, 2022 59


RESQML Technical Reference Guide v2. 2

4.9 ContourLineSetInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Information about contour lines between regions having different ranges of values
(elevation or depth mostly).

Attributes
Name Type Notes
Indicator to display the contour line value
DisplayLabelOnMajorLine boolean on major lines. To differentiate minor and
major lines, see ShowMajorLineE very.
Indicator to display the contour line value
DisplayLabelOnMinorLine boolean on minor lines. To differentiate minor and
major lines, see ShowMajorLineE very.
The absolute incremented value between
Increment double
two consecutive minor contour lines.
GraphicalInformationForEd
MajorLineGraphicalInformation Graphical information of major lines.
ges
GraphicalInformationForEd
MinorLineGraphicalInformation Graphical information of minor lines.
ges
Allows to regularly promote some minor
ShowMajorLineE very long
lines to major lines.
Especially useful for vectorial property and
ValueVectorIndex long
for geometry.

Associations
Association Notes
From: ContourLineSetInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 60


RESQML Technical Reference Guide v2. 2

4.10 DefaultGraphicalInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Jay Hollingsworth
Notes: Either for Feature, Interp or representation, mark er

Attributes
Name Type Notes
Use this especially to differentiate between
ViewerId string
two viewers of the same kind
The kind of viewer where this graphical
ViewerKind ViewerKindExt
information is supposed to be used.

Associations
Association Notes
From: Graphical information for one or more particular
DefaultGraphicalInformation.IndexableElementInfo indexable elements.
1..* To:
AbstractGraphicalInformationForIndexableElement
From: DefaultGraphicalInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 61


RESQML Technical Reference Guide v2. 2

4.11 DiscreteColorMap
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A color map associating an integer value to a color.
BUSINESS RULE: When using a discrete color map for a continuous property the property value will be
equal to the next lowest integer in the color map. For example a color map of 10, 20, 30,
etc., and a continuous property value of 16.5 will result in a value of 10 for the minimum.

Associations
Association Notes
From: DiscreteColorMap. To:
AbstractColorMap
From: DiscreteColorMap.Entry The contained “integer to color” associations.
1..* To: DiscreteColorMapEntry

Standard: v2.2 / Document: v1.0 / May 16, 2022 62


RESQML Technical Reference Guide v2. 2

4.12 DiscreteColorMapEntry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: An association between a single integer value and a color.

Attributes
Name Type Notes
The integer value to be associated with a
index long
particular color.

Associations
Association Notes
From: DiscreteColorMapEntry.Hs v The color that is associated with a particular integer
1 To: HsvColor value.
From: DiscreteColorMap.Entry The contained “integer to color” associations.
1..* To: DiscreteColorMapEntry

Standard: v2.2 / Document: v1.0 / May 16, 2022 63


RESQML Technical Reference Guide v2. 2

4.13 DisplaySpace
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Joey Magsipok
Notes:

Attributes
Name Type Notes
device
model

Associations
Association Notes
From: DisplaySpace. To: TypeEnum
From: GraphicalInformationForEdges.
To: DisplaySpace

Standard: v2.2 / Document: v1.0 / May 16, 2022 64


RESQML Technical Reference Guide v2. 2

4.14 EdgePattern
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: The graphical patterns that an edge can support.

Attributes
Name Type Notes
The edge will display as a dashed
dashed
(succession of dashes) line.
The edge will display as a dotted
dotted
(succession of dots) line.
solid The edge will display as a single line.
wavy The edge will display as a wavy line.

Associations
Association Notes
From: EdgePattern. To: TypeEnum
From: EdgePatternExt. To: EdgePattern

Standard: v2.2 / Document: v1.0 / May 16, 2022 65


RESQML Technical Reference Guide v2. 2

4.15 EdgePatternExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Allows the use of custom edge pattern in addition to the EdgePattern enumeration.

Associations
Association Notes
From: EdgePatternExt. To:
EnumExtensionPattern
From: EdgePatternExt. To: EdgePattern

Standard: v2.2 / Document: v1.0 / May 16, 2022 66


RESQML Technical Reference Guide v2. 2

4.16 GraphicalInformationForEdges
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Graphical information for edges.

Attributes
Name Type Notes
DisplaySpace DisplaySpace
Pattern EdgePatternExt The pattern of the edge.
Thickness LengthMeasureExt The thickness of the edge.
Use color and size interpolation between
UseInterpolationBetweenNodes boolean
nodes.

Associations
Association Notes
From: GraphicalInformationForEdges.
To: DisplaySpace
From: GraphicalInformationForEdges.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 67


RESQML Technical Reference Guide v2. 2

4.17 GraphicalInformationForFaces
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Graphical information for faces.

Attributes
Name Type Notes
If true the graphical information only
applies to the right handed side of the
face. If false, it only applies to the left
AppliesOnRightHandedFace boolean
handed side of the face.
If not present the graphical information
applies to both sides of faces.
Interpolate the values all along the face
UseInterpolationBetweenNodes boolean
based on fixed value set on nodes.

Associations
Association Notes
From: GraphicalInformationForFaces.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 68


RESQML Technical Reference Guide v2. 2

4.18 GraphicalInformationForNodes
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Graphical information for nodes.

Attributes
Name Type Notes
A size for all the nodes.
ConstantSize LengthMeasureExt Not defined if ActiveSizeInformationIndex
is defined.
DisplaySpace DisplaySpace
Allows you to show only a subset of nodes
ShowSymbolEvery long
(instead of all of them).
The symbol used to visualize a single
Symbol NodeSymbolExt
node.

Associations
Association Notes
From: GraphicalInformationForNodes.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 69


RESQML Technical Reference Guide v2. 2

4.19 GraphicalInformationForVolumes
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Graphical information for volumes.

Attributes
Name Type Notes
Interpolate the values all along the volume
UseInterpolationBetweenNodes boolean
based on a fixed value set on nodes.

Associations
Association Notes
From: GraphicalInformationForVolumes.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 70


RESQML Technical Reference Guide v2. 2

4.20 GraphicalInformationForWholeObject
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: Graphical information for the whole data object.

Attributes
Name Type Notes
Display the contour line of the visualized
data object according to information at a
ActiveContourLineSet InformationIndex long
particular index of the
GraphicalInformationSet.
Display the title of the visualized data
DisplayTitle boolean
object next to it.

Associations
Association Notes
From: GraphicalInformationForWholeObject.
To:
AbstractGraphicalInformationForIndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 71


RESQML Technical Reference Guide v2. 2

4.21 HsvColor
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: See https://en.wik ipedia.org/wik i/HSL_and_HSV

Attributes
Name Type Notes
Transparency/opacity of the color: 0 is
Alpha double totally transparent while 1 is totally
opaque.
Hue double Hue of the color in the HSV model.
Saturation double Saturation of the color in the HSV model.
Title string Name of the color.
Value double Value of the color in the HSV model.

Associations
Association Notes
From: AbstractColorMap.BelowMinColor The color to use for values that are below (i.e., inferior
0..1 To: HsvColor to) the minimum value of the color map.
From: The constant color to apply to the indexable element.
AbstractGraphicalInformationForIndexableElement.C
onstantColor
0..1 To: HsvColor
From: AbstractColorMap.NullColor The color to use for null values.
0..1 To: HsvColor
From: DiscreteColorMapEntry.Hs v The color that is associated with a particular integer
1 To: HsvColor value.
From: AbstractColorMap.AboveMaxColor The color to use for values that are above (i.e.,
0..1 To: HsvColor superior to) the maximum value of the color map.
From: ContinuousColorMapEntry.Hs v The color that is associated with a particular double
1 To: HsvColor value.

Standard: v2.2 / Document: v1.0 / May 16, 2022 72


RESQML Technical Reference Guide v2. 2

4.22 InterpolationDomain
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Color domain/model for interpolation.

Attributes
Name Type Notes
hsv Hue Saturation Value color model.
rgb Red Green Blue color model.

Associations
Association Notes
From: InterpolationDomain. To: TypeEnum
From: ContinuousColorMap. To:
InterpolationDomain

Standard: v2.2 / Document: v1.0 / May 16, 2022 73


RESQML Technical Reference Guide v2. 2

4.23 InterpolationMethod
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Method for interpolation.

Attributes
Name Type Notes
linear
logarithmic

Associations
Association Notes
From: InterpolationMethod. To: TypeEnum
From: ContinuousColorMap. To:
InterpolationMethod

Standard: v2.2 / Document: v1.0 / May 16, 2022 74


RESQML Technical Reference Guide v2. 2

4.24 MinMax
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Philippe
Notes: A simple reusable structure that carries a minimum and a maximum double value leading
to the definition of an interval of values.

Attributes
Name Type Notes
Maximum double The maximum value of the interval.
Minimum double The minimum value of the interval.

Standard: v2.2 / Document: v1.0 / May 16, 2022 75


RESQML Technical Reference Guide v2. 2

4.25 NodeSymbol
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Standardized symbols for node visualization.

Attributes
Name Type Notes
circle
cross
cube
diamond
plus
point
pyramid
sphere
star
tetrahedron

Associations
Association Notes
From: NodeSymbolExt. To:
NodeSymbol

Standard: v2.2 / Document: v1.0 / May 16, 2022 76


RESQML Technical Reference Guide v2. 2

4.26 NodeSymbolExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Allows you to use custom node symbols in addition to the NodeSymbol enumeration.

Associations
Association Notes
From: NodeSymbolExt. To:
EnumExtensionPattern
From: NodeSymbolExt. To:
NodeSymbol

Standard: v2.2 / Document: v1.0 / May 16, 2022 77


RESQML Technical Reference Guide v2. 2

4.27 SizeInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/9/2017 Last modified:3/9/2017 Status: Proposed Author: Philippe
Notes: Used for properties and property k inds and for geometry. In the latter case, we need to
point to the representation.

Attributes
Name Type Notes
MinMax MinMax
Indicates that the log of the property
UseLogarithmicMapping boolean values are taken into account when
mapped with the index of the color map.
Indicates that the minimum value of the
property corresponds to the maximum
index of the color map and that te
UseReverseMapping boolean
maximum value of the property
corresponds to the minimum index of the
color map.
Especially useful for vectorial property and
ValueVectorIndex long
for geometry.

Associations
Association Notes
From: SizeInformation. To:
AbstractGraphicalInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 78


RESQML Technical Reference Guide v2. 2

4.28 ViewerKind
Type: Enumeration Stereotype:
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Standardized k inds of viewers.

Attributes
Name Type Notes
A viewer where data objects are visualized
3d
in a 3D space.
A viewer where data objects are visualized
base map
in 2D from above.
A viewer where data objects are laterally
section
visualized in 2D.
A viewer where several well-related data
well correlation objects (mostly channels and markers) are
visualized against depth.

Associations
Association Notes
From: ViewerKind. To: TypeEnum
From: ViewerKindExt. To: ViewerKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 79


RESQML Technical Reference Guide v2. 2

4.29 ViewerKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 3/9/2017 Last modified:11/29/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Allows you to use custom viewer kinds in addition to the ViewerKind enumeration.

Associations
Association Notes
From: ViewerKindExt. To:
EnumExtensionPattern
From: ViewerKindExt. To: ViewerKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 80


RESQML Technical Reference Guide v2. 2

5 Grids
Package: xsd_schemas

Notes: This package contains classes used to define and exchange grid representations in
RESQML.
A grid is a RESQML representation that provides a cellular discretization of space. A grid
shares three important characteristics with all other RESQML representations:
• A description of the topology (indexing) and geometry of the grid representation.
• A grid, or a subrepresentation of a grid, may provide a representation of an
interpretation of a RESQML geologic feature, most often an earth model or a
structural organization.
• Properties may be attached to a grid representation, i.e., a grid supplies the
topological support for properties.
RESQML also provides a closely related “grid connection set” representation, which is
based on “cell-face-pairs”, for the purpose of describing the connections between grid
cells, and a “blocked wellbore” representation to describe wellbore trajectories discretized
on a grid.
Although it may seem reasonable to organize grids by the geometry of their cells,
industry applications more naturally segregate grids by their topology, i.e., the
dimensionality of the indexing of the cells. RESQML follows this approach and supports
six distinct grid classes:
• Three grid classes are fundamental and will be recognizable to most practitioners.
• Three grid classes are combinations of these fundamental classes, and provide
support for advanced variations in unstructured grids.
All grids support various extensions, such as higher order cell geometry, although some
extensions may only exist for particular classes. For example, only IJK grids support
radial grid cell interpolation. The corner point grid supported by many applications is a
specific example of an IJK grid, although without all of the extensions now supported in
RESQML
For more information, see the Grid chapter in the RESQML Technical Usage Guide.

AbstractRepresentation
«XSDcomplexType,XSDtopLevelElement»
AbstractGridRepresentation

«XSDcomplexType,XSDtopLevelEle... «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»


UnstructuredGridRepresentation AbstractColumnLayerGridRepresentation AbstractTruncatedColumnLayerGridRepresentation GpGridRepresentation Seismic::Seismic3dPostStackRepresentation

«XSDelement» «XSDelement» «XSDelement» «XSDelement»


+ CellCount: PositiveLong + Nk: PositiveLong + Nk: PositiveLong + SeismicLatticeSubSampling: IntegerLatticeArray
+ TraceSampling: FloatingPointLatticeArray

«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelEle... «XSDcomplexType,XSDtopLevelElement»


UnstructuredColumnLayerGridRepresentation IjkGridRepresentation TruncatedIjkGridRepresentation TruncatedUnstructuredColumnLayerGridRepresentation

«XSDelement» «XSDelement» «XSDelement» «XSDelement»


+ ColumnCount: PositiveLong + Ni: PositiveLong + Ni: PositiveLong + ColumnCount: PositiveLong
+ Nj: PositiveLong + Nj: PositiveLong
+ RadialGridIsComplete: boolean [0..1]

Standard: v2.2 / Document: v1.0 / May 16, 2022 81


RESQML Technical Reference Guide v2. 2

AbstractRepresentation
«XSDcomplexType,XSDtopLevelElement»
AbstractGridRepresentation

+IntervalStratigraphicUnits
+CellFluidPhaseUnits
0..1 0..1
«XSDcomplexType» «XSDcomplexType»
IntervalStratigraphicUnits CellFluidPhaseUnits

«XSDelement» «XSDelement»
+ UnitIndices: JaggedArray + PhaseUnitIndices: JaggedArray

+RockFluidOrganizationInterpretation
+StratigraphicOrganizationInterpretation

AbstractOrganizationInterpretation AbstractOrganizationInterpretation
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelEle...
AbstractGeologicUnitOrganizationInterpretation RockFluidOrganizationInterpretation

«XSDelement»
+ AscendingOrderingCriteria: OrderingCriteria

AbstractGeometry
«XSDcomplexType»
PointGeometry

«XSDelement»
+ Points: AbstractPoint3dArray

«XSDcomplexType»
«XSDcomplexType» +AdditionalGridPoints
AdditionalGridPoints
AbstractGridGeometry
0..* «XSDelement»
+ Attachment: GridGeometryAttachment
+ Points: AbstractPoint3dArray
+ RepresentationPatchIndex: NonNegativeLong [0..1]

«XSDcomplexType»
«XSDcomplexType» AbstractColumnLayerGridGeometry
string
UnstructuredGridGeometry
«XSDelement» «enumeration»
«XSDelement» + CellGeometryIsDefined: AbstractBooleanArray [0..1] GridGeometryAttachment
+ CellFaceIsRightHanded: AbstractBooleanArray + KDirection: KDirection
cells
+ NodeIsColocatedInKDirection: AbstractBooleanArray [0..1]
+ CellShape: CellShape edges
+ NodeIsColocatedOnKEdge: AbstractBooleanArray [0..1]
+ FaceCount: PositiveLong + PillarGeometryIsDefined: AbstractBooleanArray
faces
+ FacesPerCell: JaggedArray + PillarShape: PillarShape
hinge node faces
+ NodeCount: PositiveLong nodes
+ NodesPerFace: JaggedArray radial origin polyline
subnodes

«XSDcomplexType»
UnstructuredColumnLayerGridGeometry «XSDcomplexType»
IjkGridGeometry
«XSDelement»
+ ColumnIsRightHanded: AbstractBooleanArray «XSDelement»
+ ColumnShape: ColumnShape + GridIsRighthanded: boolean
+ PillarCount: PositiveLong
+ PillarsPerColumn: JaggedArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 82


RESQML Technical Reference Guide v2. 2

AbstractGridGeometry
«XSDcomplexType»
UnstructuredGridGeometry «XSDcomplexType»
AdditionalGridTopology
«XSDelement»
+ CellFaceIsRightHanded: AbstractBooleanArray
+ CellShape: CellShape
+ FaceCount: PositiveLong
+ FacesPerCell: JaggedArray
+ NodeCount: PositiveLong
+ NodesPerFace: JaggedArray

+UnstructuredSubnodeTopology
string +UnstructuredSubnodeTopology
+UnstructuredGridHingeNodeFaces
«enumeration»
CellShape
0..1 0..1 0..1
tetrahedral
pyramidal «XSDcomplexType» SubnodeTopology
prism UnstructuredGridHingeNodeFaces
hexahedral «XSDcomplexType»
polyhedral
«XSDelement» UnstructuredSubnodeTopology
+ Count: PositiveLong
+ FaceIndices: AbstractIntegerArray «XSDelement»
+ NodesPerCell: JaggedArray [0..1]

+Edges 0..1

«XSDcomplexType»
Edges

«XSDelement»
+ Count: PositiveLong
+ NodesPerEdge: AbstractIntegerArray
string
AbstractGridGeometry
«enumeration»
PillarShape «XSDcomplexType»
vertical AbstractColumnLayerGridGeometry
straight
curved
«XSDelement»
+ CellGeometryIsDefined: AbstractBooleanArray [0..1]
string
+ KDirection: KDirection
«enumeration»
+ NodeIsColocatedInKDirection: AbstractBooleanArray [0..1]
KDirection + NodeIsColocatedOnKEdge: AbstractBooleanArray [0..1]
down + PillarGeometryIsDefined: AbstractBooleanArray
up
not monotonic + PillarShape: PillarShape
+ColumnLayerSplitCoordinateLines
+SplitNodePatch

0..1
0..1
«XSDcomplexType»
«XSDcomplexType» SplitNodePatch
ColumnLayerSplitCoordinateLines
«XSDelement»
«XSDelement» + CellsPerSplitNode: JaggedArray
+ ColumnsPerSplitCoordinateLine: JaggedArray + Count: PositiveLong
+ Count: PositiveLong +SplitNodePatch + ParentNodeIndices: AbstractIntegerArray
+ PillarIndices: AbstractIntegerArray
0..1

+SplitColumnEdges +SplitFaces
0..1
0..1
«XSDcomplexType»
«XSDcomplexType»
SplitFaces
SplitColumnEdges
«XSDelement»
«XSDelement»
+SplitFaces + CellPerSplitFace: AbstractIntegerArray
+ ColumnPerSplitColumnEdge: AbstractIntegerArray
+ Count: PositiveLong
+ Count: PositiveLong 0..1
+ ParentFaceIndices: AbstractIntegerArray
+ ParentColumnEdgeIndices: AbstractIntegerArray
+SplitColumnEdges 0..1
+SplitEdges
0..1

«XSDcomplexType»
SplitEdges
«XSDelement»
+ Count: PositiveLong
+ColumnLayerSubnodeTopology
+SplitEdges
+ FacesPerSplitEdge: JaggedArray
«XSDcomplexType» + ParentEdgeIndices: AbstractIntegerArray
0..1
AdditionalGridTopology 0..1

+ColumnLayerSubnodeTopology
SubnodeTopology
«XSDcomplexType»
0..1
ColumnLayerSubnodeTopology

+ColumnSubnodePatch 0..*

SubnodePatch
«XSDcomplexType»
ColumnSubnodePatch
«XSDelement»
+ SubnodeCountPerObject: AbstractIntegerArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 83


RESQML Technical Reference Guide v2. 2

AbstractColumnLayerGridGeometry
«XSDcomplexType»
UnstructuredColumnLayerGridGeometry
«XSDelement» «XSDcomplexType»
+ ColumnIsRightHanded: AbstractBooleanArray AdditionalGridTopology
+ ColumnShape: ColumnShape
+ PillarCount: PositiveLong
+ PillarsPerColumn: JaggedArray

string
«enumeration»
ColumnShape
triangular
quadrilateral
+UnstructuredColumnEdges +UnstructuredColumnEdges
polygonal

0..1 0..1

«XSDcomplexType»
UnstructuredColumnEdges
«XSDelement»
+ Count: PositiveLong
+ PillarsPerColumnEdge: JaggedArray

AbstractColumnLayerGridGeometry
«XSDcomplexType»
IjkGridGeometry
«XSDelement»
+ GridIsRighthanded: boolean

+IjGaps
0..1

«XSDcomplexType»
IjGaps
«XSDelement»
+ ColumnsPerSplitPillar: JaggedArray
+ ParentPillarIndices: AbstractIntegerArray
+ SplitPillarCount: PositiveLong

Standard: v2.2 / Document: v1.0 / May 16, 2022 84


RESQML Technical Reference Guide v2. 2

«XSDcomplexType»
AbstractParentWindow

+ParentWindow 0..1

+CellOverlap

0..1

«XSDcomplexType»
CellOverlap

«XSDelement»
+ Count: PositiveLong
+ ParentChildCellPairs: AbstractIntegerArray

«XSDcomplexType»
+OverlapVolume 0..1 CellParentWindow
«XSDcomplexType»
«XSDelement»
OverlapVolume
+ CellIndices: AbstractIntegerArray
«XSDelement»
+ OverlapVolumes: AbstractFloatingPointArray
+ VolumeUom: VolumeUom
«XSDcomplexType» «XSDcomplexType»
ColumnLayerParentWindow Regrid
+KRegrid
«XSDelement» «XSDelement»
+ ColumnIndices: AbstractIntegerArray + InitialIndexOnParentGrid: NonNegativeLong
AbstractObject
+ OmitParentCells: AbstractIntegerArray [0..1]
«XSDcomplexType,XSDtopLevelElement»
LocalGridSet
+KRegrid

+JRegrid
+Activation +IRegrid
«XSDcomplexType»
IjkParentWindow
0..1 «XSDelement»
«XSDcomplexType» + OmitParentCells: AbstractIntegerArray [0..1]
Activation
+ChildGrid
1..* +Intervals 0..1
«XSDelement» AbstractRepresentation
+ ActivationToggleIndices: AbstractIntegerArray «XSDcomplexType»
«XSDcomplexType,XSDtopLevelElement» Intervals
AbstractGridRepresentation
«XSDelement»
+ ChildCellWeights: AbstractFloatingPointArray [0..1]
+TimeSeries +ParentGridRepresentation
+ ChildCountPerInterval: AbstractIntegerArray
+ IntervalCount: PositiveLong
AbstractObject + ParentCountPerInterval: AbstractIntegerArray
«XSDcomplexType,XSDtopLevelEle... «XSDcomplexType,XSDtopLevelElement»
CommonTypes::TimeSeries AbstractColumnLayerGridRepresentation

«XSDelement» «XSDelement»
+ Nk: PositiveLong
+ Time: GeologicTime [1..-1] {ordered} +ParentColumnLayerGridRepresentation
+ TimeStep: AbstractIntegerArray [0..1]

«XSDcomplexType,XSDtopLevelElement»
IjkGridRepresentation
+ParentIjkGridRepresentation
«XSDelement»
+ Ni: PositiveLong
+ Nj: PositiveLong
+ RadialGridIsComplete: boolean [0..1]

Standard: v2.2 / Document: v1.0 / May 16, 2022 85


RESQML Technical Reference Guide v2. 2

AbstractColumnLayerGridRepresentation
«XSDcomplexType,XSDtopLevelElement»
IjkGridRepresentation
«XSDelement»
+ Ni: PositiveLong
+ Nj: PositiveLong
+ RadialGridIsComplete: boolean [0..1]

+Geometry +KGaps

0..1 0..1

AbstractColumnLayerGridGeometry «XSDcomplexType»
«XSDcomplexType» KGaps
IjkGridGeometry
«XSDelement»
«XSDelement» + Count: PositiveLong
+ GridIsRighthanded: boolean + GapAfterLayer: AbstractBooleanArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 86


RESQML Technical Reference Guide v2. 2

AbstractColumnLayerGridRepresentation
«XSDcomplexType,XSDtopLevelElement»
UnstructuredColumnLayerGridRepresentation
«XSDelement»
+ ColumnCount: PositiveLong

string
«enumeration»
UnstructuredColumnLayerIndexableElements

«Topology»
cells
columns
hinge node faces
interval edges +Geometry
intervals 0..1
layers
«AdditionalElements» AbstractColumnLayerGridGeometry
column edges
«XSDcomplexType»
edges
faces UnstructuredColumnLayerGridGeometry
nodes per edge
subnodes
«XSDelement»
+ ColumnIsRightHanded: AbstractBooleanArray
«Geometry»
coordinate lines
+ ColumnShape: ColumnShape
edges per column + PillarCount: PositiveLong
faces per cell + PillarsPerColumn: JaggedArray
nodes
nodes per cell
nodes per face
pillars

Standard: v2.2 / Document: v1.0 / May 16, 2022 87


RESQML Technical Reference Guide v2. 2

AbstractRepresentation
«XSDcomplexType,XSDtopLevelElement»
AbstractGridRepresentation

+OriginalGrids 1..*

«XSDcomplexType» «XSDcomplexType,XSDtopLevelElement»
AlternateCellIndex UnstructuredGridRepresentation
«XSDelement» +OriginalCellIndex «XSDelement»
+ CellIndex: AbstractIntegerArray 0..1 + CellCount: PositiveLong
+ GridIndex: AbstractIntegerArray

string
+Geometry
«enumeration»
0..1
UnstructuredCellIndexableElements

«Topology» AbstractGridGeometry
cells «XSDcomplexType»
«AdditionalElements»
edges
UnstructuredGridGeometry
hinge node faces
nodes per cell
«XSDelement»
nodes per edge + CellFaceIsRightHanded: AbstractBooleanArray
subnodes + CellShape: CellShape
«Geometry» + FaceCount: PositiveLong
faces
faces per cell
+ FacesPerCell: JaggedArray
nodes + NodeCount: PositiveLong
nodes per face + NodesPerFace: JaggedArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 88


RESQML Technical Reference Guide v2. 2

AbstractGridRepresentation
«XSDcomplexType,XSDtopLevelElement»
AbstractTruncatedColumnLayerGridRepresentation
«XSDelement»
+TruncationCellPatch
+ Nk: PositiveLong
«XSDcomplexType»
TruncationCellPatch

«XSDelement»
+ LocalFacesPerCell: JaggedArray
+ NodesPerTruncationFace: JaggedArray
+ ParentCellIndices: AbstractIntegerArray
+ TruncationCellCount: PositiveLong
+ TruncationCellFaceIsRightHanded: AbstractBooleanArray
+ TruncationFaceCount: PositiveLong
+ TruncationFacesPerCell: JaggedArray
+ TruncationNodeCount: PositiveLong

«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
TruncatedIjkGridRepresentation TruncatedUnstructuredColumnLayerGridRepresentation

«XSDelement» «XSDelement»
+ Ni: PositiveLong + ColumnCount: PositiveLong
+ Nj: PositiveLong

+Geometry +Geometry

AbstractColumnLayerGridGeometry AbstractColumnLayerGridGeometry
«XSDcomplexType» «XSDcomplexType»
IjkGridGeometry UnstructuredColumnLayerGridGeometry
«XSDelement» «XSDelement»
+ GridIsRighthanded: boolean + ColumnIsRightHanded: AbstractBooleanArray
+ ColumnShape: ColumnShape
+ PillarCount: PositiveLong
+ PillarsPerColumn: JaggedArray

AbstractGridRepresentation
«XSDcomplexType,XSDtopLevelElement»
GpGridRepresentation
+ColumnLayerGpGrid
+UnstructuredGpGridPatch

0..*
0..*

«XSDcomplexType» «XSDcomplexType»
UnstructuredGpGridPatch ColumnLayerGpGrid

«XSDelement» «XSDelement»
+ UnstructuredCellCount: NonNegativeLong + Nk: NonNegativeLong

+KGaps
0..1

+IjkGpGridPatch
+UnstructuredColumnLayerGpGridPatch
0..* 0..* «XSDcomplexType»
KGaps
«XSDcomplexType» «XSDcomplexType»
UnstructuredColumnLayerGpGridPatch IjkGpGridPatch «XSDelement»
+ Count: PositiveLong
«XSDelement» «XSDelement» + GapAfterLayer: AbstractBooleanArray
+ UnstructuredColumnCount: NonNegativeLong + Ni: NonNegativeLong
+ Nj: NonNegativeLong
+ RadialGridIsComplete: boolean [0..1]

+Geometry +Geometry
+Geometry
0..1 0..1
0..1

AbstractGridGeometry AbstractColumnLayerGridGeometry AbstractColumnLayerGridGeometry


«XSDcomplexType» «XSDcomplexType» «XSDcomplexType»
UnstructuredGridGeometry UnstructuredColumnLayerGridGeometry IjkGridGeometry
+TruncationCellPatch
«XSDelement» «XSDelement»
+TruncationCellPatch «XSDelement»
+ CellFaceIsRightHanded: AbstractBooleanArray + ColumnIsRightHanded: AbstractBooleanArray + GridIsRighthanded: boolean
+ CellShape: CellShape + ColumnShape: ColumnShape 0..1
+ FaceCount: PositiveLong + PillarCount: PositiveLong
0..1

+ FacesPerCell: JaggedArray + PillarsPerColumn: JaggedArray «XSDcomplexType»


+ NodeCount: PositiveLong TruncationCellPatch
+ NodesPerFace: JaggedArray
«XSDelement»
+ LocalFacesPerCell: JaggedArray
+ NodesPerTruncationFace: JaggedArray
+ ParentCellIndices: AbstractIntegerArray
+ TruncationCellCount: PositiveLong
+ TruncationCellFaceIsRightHanded: AbstractBooleanArray
+ TruncationFaceCount: PositiveLong
+ TruncationFacesPerCell: JaggedArray
+ TruncationNodeCount: PositiveLong

Standard: v2.2 / Document: v1.0 / May 16, 2022 89


RESQML Technical Reference Guide v2. 2

«XSDcomplexType»
SubnodeTopology

«XSDcomplexType»
SubnodePatch

«XSDelement»
+ NodeWeightsPerSubnode: AbstractValueArray
+ SubnodeNodeObject: SubnodeNodeObject

string
«enumeration»
SubnodeNodeObject
«XSDcomplexType» cell
UniformSubnodePatch face
edge
«XSDelement»
0..*
+ SubnodeCountPerObject: PositiveLong

+UniformSubnodePatch

«XSDcomplexType» «XSDcomplexType»
«XSDcomplexType»
UnstructuredSubnodeTopology 0..* VariableSubnodePatch
ColumnLayerSubnodeTopology
«XSDelement» «XSDelement»
+ NodesPerCell: JaggedArray [0..1] +VariableSubnodePatch + ObjectIndices: AbstractIntegerArray
+ SubnodeCountPerSelectedObject: AbstractIntegerArray

+Edges
0..1

«XSDcomplexType» «XSDcomplexType»
Edges ColumnSubnodePatch
+ColumnSubnodePatch
«XSDelement» «XSDelement»
0..*
+ Count: PositiveLong + SubnodeCountPerObject: AbstractIntegerArray
+ NodesPerEdge: AbstractIntegerArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 90


RESQML Technical Reference Guide v2. 2

AbstractRepresentation
«XSDcomplexType,XSDtopLevelElement»
GridConnectionSetRepresentation
«XSDelement»
+ CellIndexPairs: AbstractIntegerArray
+ Count: PositiveLong
+ GridIndexPairs: AbstractIntegerArray [0..1]
+ LocalFacePerCellIndexPairs: AbstractIntegerArray [0..1]

+Grid +ConnectionInterpretations

1..* 0..1

AbstractRepresentation «XSDcomplexType»
«XSDcomplexType,XSDt... ConnectionInterpretations
AbstractGridRepresentation
«XSDelement»
+ InterpretationIndices: JaggedArray

+FeatureInterpretation 1..*

AbstractObject
«XSDcomplexType,XSDto...
AbstractFeatureInterpretation

«XSDelement»
+ Domain: Domain [0..1]

Standard: v2.2 / Document: v1.0 / May 16, 2022 91


RESQML Technical Reference Guide v2. 2

SubnodeTopology
+UnstructuredSubnodeTopology
«XSDcomplexType»
UnstructuredSubnodeTopology
0..1
«XSDelement»
+ NodesPerCell: JaggedArray [0..1]

SubnodeTopology
+ColumnLayerSubnodeTopology
«XSDcomplexType»
ColumnLayerSubnodeTopology
0..1

«XSDcomplexType»
SplitNodePatch

+SplitNodePatch «XSDelement»
+ CellsPerSplitNode: JaggedArray
+ Count: PositiveLong
0..1 + ParentNodeIndices: AbstractIntegerArray

+SplitFaces 0..1

«XSDcomplexType»
SplitFaces
«XSDcomplexType» +SplitFaces «XSDelement»
AdditionalGridTopology + CellPerSplitFace: AbstractIntegerArray
0..1 + Count: PositiveLong
+ ParentFaceIndices: AbstractIntegerArray

+SplitEdges 0..1

«XSDcomplexType»
SplitEdges

«XSDelement»
+SplitEdges + Count: PositiveLong
0..1 + FacesPerSplitEdge: JaggedArray
+ ParentEdgeIndices: AbstractIntegerArray

«XSDcomplexType»
+SplitColumnEdges SplitColumnEdges

0..1 «XSDelement»
+ ColumnPerSplitColumnEdge: AbstractIntegerArray
+ Count: PositiveLong
+ ParentColumnEdgeIndices: AbstractIntegerArray

+UnstructuredColumnEdges «XSDcomplexType»
UnstructuredColumnEdges
0..1
«XSDelement»
+ Count: PositiveLong
+ PillarsPerColumnEdge: JaggedArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 92


RESQML Technical Reference Guide v2. 2

string string string


«enumeration» «enumeration» «enumeration»
IjkIndexableElements UnstructuredColumnLayerIndexableElements UnstructuredCellIndexableElements

«Topology» «Topology» «Topology»


cells cells cells
column edges columns «AdditionalElements»
columns hinge node faces edges
coordinate lines interval edges hinge node faces
edges per column intervals nodes per cell
faces layers nodes per edge
faces per cell «AdditionalElements» subnodes
hinge node faces column edges «Geometry»
interval edges edges faces
intervals faces faces per cell
I0 nodes per edge nodes
I0 edges subnodes nodes per face
J0
«Geometry»
J0 edges
coordinate lines
layers
edges per column
nodes
faces per cell
nodes per cell
nodes
nodes per face
nodes per cell
pillars
nodes per face
radial origin polyline
pillars
«AdditionalElements»
edges
nodes per edge
subnodes

Standard: v2.2 / Document: v1.0 / May 16, 2022 93


RESQML Technical Reference Guide v2. 2

5.1 AbstractColumnLayerGridGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Description of the geometry of a column layer grid, e.g., parity and pinch, together with its
supporting topology.

• Column layer grid cell geometry is based upon nodes on coordinate lines.
• Geometry is contained within the representation of a grid.
• Point Geometry is that of the column layer coordinate line nodes. Coordinate line
nodes for all of the coordinate lines, with NKL nodes per line.
• The numbering of these lines follow the pillar numbering if no split coordinate lines
are present.
• The unsplit coordinate lines share an indexing with the pillars. The numbering of the
remaining lines are defined in the columnsPerSplitCoordinateLine list-of-lists if split
coordinate lines are present.
• Pillar numbering is either 1D or 2D, so for unfaulted grids, the node dimensions may
follow either a 2D or 3D array. Otherwise the nodes will be 2D.
In HDF5 nodes are stored as separate X, Y, Z, values, so add another dimension
(size=3) which is fastest in HDF5.

Attributes
Name Type Notes
Indicator that a cell has a defined
geometry. This attribute is grid metadata. If
the indicator shows that the cell geometry
is NOT defined, then this attribute
CellGeometryIsDefined AbstractBooleanArray
overrides any other node geometry
specification.

Array index is 2D/3D.


KDirection KDirection
Optional indicator that two adjacent nodes
on a coordinate line are colocated. This is
considered grid metadata, and is intended
to over-ride any geometric comparison of
NodeIsColocatedInK Direction AbstractBooleanArray
node locations.

Array index follows #CoordinateLines x


(NKL-1).
Optional indicator that two adjacent nodes
on the KEDGE of a cell are colocated. This
is considered grid metadata, and is
intended to over-ride any geometric
NodeIsColocatedOnKEdge AbstractBooleanArray comparison of node locations.

Array index follows #EdgesPerColumn x


NKL for unstructured column layer grids
and 4 x NI x NJ x NKL for IJK grids.

Standard: v2.2 / Document: v1.0 / May 16, 2022 94


RESQML Technical Reference Guide v2. 2

Indicator that a pillar has at least one node


with a defined cell geometry. This is
considered grid metadata. If the indicator
does not indicate that the pillar geometry is
PillarGeometryIsDefined AbstractBooleanArray defined, then this over-rides any other
node geometry specification.

Array index follows #Pillars and so may be


either 2D or 1D.
PillarShape PillarShape

Associations
Association Notes
From:
AbstractColumnLayerGridGeometry.ColumnLayerSplit
CoordinateLines
0..1 To: ColumnLayerSplitCoordinateLines
From:
AbstractColumnLayerGridGeometry.ColumnLayerSubn
odeTopology
0..1 To: ColumnLayerSubnodeTopology
From: AbstractColumnLayerGridGeometry.
To: AbstractGridGeometry
From:
AbstractColumnLayerGridGeometry.SplitNodePatch
0..1 To: SplitNodePatch
From:
AbstractColumnLayerGridGeometry.SplitColumnEdges
0..1 To: SplitColumnEdges
From: IjkGridGeometry. To:
AbstractColumnLayerGridGeometry
From:
UnstructuredColumnLayerGridGeometry. To:
AbstractColumnLayerGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 95


RESQML Technical Reference Guide v2. 2

5.2 AbstractColumnLayerGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/5/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Abstract class that includes IJK grids and unstructured column layer grids. All column
layer grids have a layer index K=1,...,NK or K0=0,...,NK-1.

Cell geometry is characterized by nodes on coordinate lines.

Attributes
Name Type Notes
Number of layers in the grid. Must be
Nk PositiveLong
positive.

Associations
Association Notes
From:
AbstractColumnLayerGridRepresentation. To:
AbstractGridRepresentation
From:
ColumnLayerParentWindow.ParentColumnLayerGridRe
presentation
To: AbstractColumnLayerGridRepresentation
From:
UnstructuredColumnLayerGridRepre sentation.
To: AbstractColumnLayerGridRepresentation
From: IjkGridRepresentation. To:
AbstractColumnLayerGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 96


RESQML Technical Reference Guide v2. 2

5.3 AbstractGridGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/23/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Grid geometry described by means of points attached to nodes and additional optional
points which may be attached to other indexable elements of the grid representation.

Associations
Association Notes
From: AbstractGridGeometry. To:
PointGeometry
From:
AbstractGridGeometry.AdditionalGridP oints
0..* To: AdditionalGridPoints
From: UnstructuredGridGeometry. To:
AbstractGridGeometry
From: AbstractColumnLayerGridGeometry.
To: AbstractGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 97


RESQML Technical Reference Guide v2. 2

5.4 AbstractGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/31/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Abstract class for all grid representations.

Associations
Association Notes
From:
AbstractGridRepresentation.CellFluidP haseUnits
0..1 To: CellFluidPhaseUnits
From:
AbstractGridRepresentation.ParentWindow
0..1 To: AbstractParentWindow
From:
AbstractGridRepresentation.Int ervalStratigraphic Units
0..1 To: IntervalStratigraphicUnits
From: AbstractGridRepresentation. To:
AbstractRepresentation
From: AlternateCellIndex.OriginalGrids
1..* To: AbstractGridRepresentation
From:
AbstractTruncatedColumnLayerGridRepresentation.
To: AbstractGridRepresentation
From: IntervalGridCells.Grid
1..* To: AbstractGridRepresentation
From: Seismic3dPostStackRepresentation.
To: AbstractGridRepresentation
From: GpGridRepresentation. To:
AbstractGridRepresentation
From: GridConnectionSetRepresentation.Grid
1..* To: AbstractGridRepresentation
From:
CellParentWindow.ParentGridRepresentation
To: AbstractGridRepresentation
From: Note. To:
AbstractGridRepresentation
From: UnstructuredGridRepre sentation.
To: AbstractGridRepresentation
From:
AbstractColumnLayerGridRepresentation. To:
AbstractGridRepresentation
From: LocalGridSet.ChildGrid
1..* To: AbstractGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 98


RESQML Technical Reference Guide v2. 2

5.5 AbstractParentWindow
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/21/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Parent window specification, organized according to the topology of the parent grid. In
addition to a window specification, for grids with I, J, and/or K coordinates, the parentage
construction includes a regridding description that covers grid refinement, coarsening, or
any combination of the two.

Associations
Association Notes
From: AbstractParentWindow.CellOverlap
0..1 To: CellOverlap
From: CellParentWindow. To:
AbstractParentWindow
From: ColumnLayerParentWindow. To:
AbstractParentWindow
From:
AbstractGridRepresentation.ParentWindow
0..1 To: AbstractParentWindow
From: IjkParentWindow. To:
AbstractParentWindow

Standard: v2.2 / Document: v1.0 / May 16, 2022 99


RESQML Technical Reference Guide v2. 2

5.6 AbstractTruncatedColumnLayerGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/12/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Abstract class for truncated IJK grids and truncated unstructured column layer grids.
Each column layer grid class must have a defined geometry in which cells are truncated
and additional split cells are defined.

Attributes
Name Type Notes
Number of layers in the grid. Must be
Nk PositiveLong
positive.

Associations
Association Notes
From:
AbstractTruncatedColumnLayerGridRepresentation.
To: AbstractGridRepresentation
From:
AbstractTruncatedColumnLayerGridRepresentation.T
runcationCellPatch
To: TruncationCellPatch
From:
TruncatedUnstructuredColumnLayerGridRepresentati
on. To:
AbstractTruncatedColumnLayerGridRepresentation
From: TruncatedIjkGridRepresentation.
To:
AbstractTruncatedColumnLayerGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 100


RESQML Technical Reference Guide v2. 2

5.7 Activation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/11/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to activate and deactivate the referencing object at the times indicated.

• If the activation object is not present, then the referencing object is always active.

• If the activation object is present, then the referencing object is not active until
activated.

Attributes
Name Type Notes
The index in the time series at which the
state of the referencing object is changed.
ActivationToggleIndices AbstractIntegerArray Toggle changes state from inactive to
active, or toggle changes state from active
to inactive.

Associations
Association Notes
From: Activation.TimeSeries
To: TimeSeries
From: LocalGridSet.Activation
0..1 To: Activation

Standard: v2.2 / Document: v1.0 / May 16, 2022 101


RESQML Technical Reference Guide v2. 2

5.8 AdditionalGridPoints
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/30/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Geometry given by means of points attached to additional elements of a grid.

Attributes
Name Type Notes
Attachment GridGeometryAttachment
Points AbstractPoint3dArray
Used to remove ambiguity in geometry
attachment, if the attachment element is
RepresentationPatchIndex NonNegativeLong not sufficient. Usually required for
subnodes and for the general purpose
grid, but not otherwise.

Associations
Association Notes
From:
AbstractGridGeometry.AdditionalGridP oints
0..* To: AdditionalGridPoints

Standard: v2.2 / Document: v1.0 / May 16, 2022 102


RESQML Technical Reference Guide v2. 2

5.9 AdditionalGridTopology
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/2/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Additional grid topology and/or patches, if required, for indexable elements that otherwise
do not have their topology defined within the grid representation. For example, column
edges need to be defined if you want to have an enumeration for the faces of a column
layer grid, but not otherwise.

Associations
Association Notes
From: AdditionalGridTopology.SplitEdges
0..1 To: SplitEdges
From: AdditionalGridTopology.SplitFaces
0..1 To: SplitFaces
From:
AdditionalGridTopology.ColumnLayerSubnodeTopolog
y
0..1 To: ColumnLayerSubnodeTopology
From:
AdditionalGridTopology.UnstructuredColumnEdges
0..1 To: UnstructuredColumnEdges
From: AdditionalGridTopology.SplitNodePatch
0..1 To: SplitNodePatch
From:
AdditionalGridTopology.SplitColumnEdges
0..1 To: SplitColumnEdges
From:
AdditionalGridTopology.UnstructuredSubnodeTopology
0..1 To: UnstructuredSubnodeTopology
From:
RepresentationIdentity.AdditionalGridTopology
0..1 To: AdditionalGridTopology
From:
SubRepresentation.AdditionalGridTopology
0..1 To: AdditionalGridTopology

Standard: v2.2 / Document: v1.0 / May 16, 2022 103


RESQML Technical Reference Guide v2. 2

5.10 AlternateCellIndex
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/29/2016 Last modified:11/15/2016 Status: Approved Author: mike.king
Notes: Allows definition of an alternate cell indexing for a representation. If defined, this alternate
cell indexing is the only one to rely on when referencing the representation cells. The
alternate cell indices must come from existing grid representations. Because this
alternate indexing requires a lot of extra work for software readers to process, use only
when no other solution is acceptable.

Attributes
Name Type Notes
Defines each alternate cell index for each
representation cell.
CellIndex AbstractIntegerArray BUSINESS RULE :CellIndex.Count =
GridIndex.Count =
Representation.Cell.Count
Defines which grid each alternate cell
index comes from. The grids are defined
by means of an index of the OriginalGrids
GridIndex AbstractIntegerArray set.
BUSINESS RULE : GridIndex.Count =
CellIndex.Count =
Representation.Cell.Count

Associations
Association Notes
From: AlternateCellIndex.OriginalGrids
1..* To: AbstractGridRepresentation
From:
UnstructuredGridRepresentation.OriginalCellIndex
0..1 To: AlternateCellIndex

Standard: v2.2 / Document: v1.0 / May 16, 2022 104


RESQML Technical Reference Guide v2. 2

5.11 CellFluidPhaseUnits
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/13/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: A mapping from cells to fluid phase unit interpretation to describe the initial hydrostatic
fluid column.

Attributes
Name Type Notes
Index of the phase unit kind within a given
fluid phase organization for each cell.
Follows the indexing defined by the
PhaseUnit enumeration. When applied to
the wellbore frame representation, the
indexing is identical to the number of
intervals.
Since a single cell or interval may
PhaseUnitIndices JaggedArray corresponds to several units, the mapping
is done using a jagged array.

Use null value if no fluid phase is present,


e.g., within the seal.

BUSINESS RULE: Array length is equal to


the number of cells in the representation
(grid, wellbore frame or blocked well).

Associations
Association Notes
From:
CellFluidPhaseUnits.RockFluidOrganizationInterpretatio
n
To: RockFluidOrganizationInterpretation
From:
AbstractGridRepresentation.CellFluidP haseUnits
0..1 To: CellFluidPhaseUnits
From:
WellboreFrameRepresentation.CellFluidPhaseUnits
0..1 To: CellFluidPhaseUnits

Standard: v2.2 / Document: v1.0 / May 16, 2022 105


RESQML Technical Reference Guide v2. 2

5.12 CellOverlap
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/4/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional cell volume overlap information between the current grid (the child) and the
parent grid. Use this data-object when the child grid has an explicitly defined geometry,
and these relationships cannot be inferred from the regrid descriptions.

Attributes
Name Type Notes
Number of parent-child cell overlaps. Must
Count PositiveLong
be positive.
(Parent cell index, child cell index) pair for
each overlap.
ParentChildCellPairs AbstractIntegerArray
BUSINESS RULE: Length of array must
equal 2 x overlapCount.

Associations
Association Notes
From: CellOverlap.OverlapVolume
0..1 To: OverlapVolume
From: AbstractParentWindow.CellOverlap
0..1 To: CellOverlap

Standard: v2.2 / Document: v1.0 / May 16, 2022 106


RESQML Technical Reference Guide v2. 2

5.13 CellParentWindow
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Parent window for ANY grid indexed as if it were an unstructured cell grid, i.e., using a 1D
index.

Attributes
Name Type Notes
Cell indices that list the cells in the parent
window.
CellIndices AbstractIntegerArray
BUSINESS RULE: The ratio of fine to
coarse cell counts must be an integer for
each coarse cell.

Associations
Association Notes
From: CellParentWindow. To:
AbstractParentWindow
From:
CellParentWindow.ParentGridRepresentation
To: AbstractGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 107


RESQML Technical Reference Guide v2. 2

5.14 CellShape
Type: Enumeration Stereotype:
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to indicate that all cells are of a uniform topology, i.e., have the same number of
nodes per cell. This information is supplied by the RESQML writer to indicate the
complexity of the grid geometry, as an aide to the RESQML reader.

If a specific cell shape is not appropriate, then use polyhedral.

BUSINESS RULE: Should be consistent with the actual geometry of the grid.

Attributes
Name Type Notes
All grid cells are constrained to have only 4
nodes/cell with 4 faces/cell, 3 nodes/face,
tetrahedral External Reference
4 nodes/cell for all cells (degeneracy
allowed).
All grid cells are constrained to have only 5
pyramidal External Reference nodes/cell with 5 faces/cell, with 1
quadrilateral face and 4 triangular faces.
All grid cells are constrained to have 6
nodes/cell with 5 faces/cell, with 3
prism External Reference quadrilateral faces and 2 non-adjacent
triangular faces, as in a column layer grid
with triangular columns.
All grid cells are constrained to have 8
nodes/cell with 6 faces/cell, 4 nodes/face,
hexahedral External Reference
8 nodes/cell for all cells (degeneracy
allowed). Equivalent to IJK grid cells.
If the cell geometry is not of a more
polyhedral External Reference
specific kind, use polyhedral.

Standard: v2.2 / Document: v1.0 / May 16, 2022 108


RESQML Technical Reference Guide v2. 2

5.15 ColumnLayerGpGrid
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/3/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to construct a column layer grid patch based upon multiple unstructured column-
layer and IJK grids that share a layering scheme.

Multiple patches are supported.

Attributes
Name Type Notes
Number of layers. Degenerate case (nk=0)
Nk NonNegativeLong
is allowed for GPGrid.

Associations
Association Notes
From: ColumnLayerGpGrid.KGaps
0..1 To: KGaps
From:
ColumnLayerGpGrid.UnstructuredColumnLayerGpGridP
atch
0..* To: UnstructuredColumnLayerGpGridPatch
From: ColumnLayerGpGrid.IjkGpGridPatch
0..* To: IjkGpGridPatch
From:
GpGridRepresentation.ColumnLayerGpGrid
0..* To: ColumnLayerGpGrid

Standard: v2.2 / Document: v1.0 / May 16, 2022 109


RESQML Technical Reference Guide v2. 2

5.16 ColumnLayerParentWindow
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Parent window for any column-layer grid indexed as if it were an unstructured column
layer grid, i.e., IJ columns are replaced by a column index.

Attributes
Name Type Notes
Column indices that list the columns in the
parent window.
ColumnIndices AbstractIntegerArray
BUSINESS RULE: The ratio of fine to
coarse column counts must be an integer
for each coarse column.
List of parent cells that are to be retained
at their original resolution and are not to be
included within a local grid. The "omit"
allows non-rectangular local grids to be
OmitParentCells AbstractIntegerArray specified.

0-based indexing follows #Columns x


#Layers relative to the parent window cell
count, not to the parent grid.

Associations
Association Notes
From: ColumnLayerParentWindow. To:
AbstractParentWindow
From:
ColumnLayerParentWindow.ParentColumnLayerGridRe
presentation
To: AbstractColumnLayerGridRepresentation
From: ColumnLayerParentWindow.KRegrid
To: Regrid

Standard: v2.2 / Document: v1.0 / May 16, 2022 110


RESQML Technical Reference Guide v2. 2

5.17 ColumnLayerSplitCoordinateLines
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Definition of the indexing for the split coordinate lines. When present, this indexing
contributes to the coordinate line nodes.

Attributes
Name Type Notes
Column indices for each of the split
coordinate lines. Used to implicitly define
ColumnsPerSplitCoordinat eLine JaggedArray column and cell geometry. List-of-lists
construction used to support shared
coordinate lines.
Number of split coordinate lines. The count
Count PositiveLong
must be positive.
Pillar index for each split coordinate line.
Length of this array is equal to the number
of split coordinate lines.

For the first pillarCount lines, the index of


the coordinate line equals the index of the
PillarIndices AbstractIntegerArray
corresponding pillar. This array provides
the pillar indices for the additional (split)
coordinate lines.

Used to implicitly define column and cell


geometry.

Associations
Association Notes
From:
AbstractColumnLayerGridGeometry.ColumnLayerSplit
CoordinateLines
0..1 To: ColumnLayerSplitCoordinateLines

Standard: v2.2 / Document: v1.0 / May 16, 2022 111


RESQML Technical Reference Guide v2. 2

5.18 ColumnLayerSubnodeTopology
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/22/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: This data-object consists of the unstructured cell finite elements subnode topology plus
the column subnodes.

Associations
Association Notes
From:
ColumnLayerSubnodeTopology.ColumnSubnodeP atch
0..* To: ColumnSubnodePatch
From: ColumnLayerSubnodeTopology.
To: SubnodeTopology
From:
AdditionalGridTopology.ColumnLayerSubnodeTopolog
y
0..1 To: ColumnLayerSubnodeTopology
From:
AbstractColumnLayerGridGeometry.ColumnLayerSubn
odeTopology
0..1 To: ColumnLayerSubnodeTopology

Standard: v2.2 / Document: v1.0 / May 16, 2022 112


RESQML Technical Reference Guide v2. 2

5.19 ColumnShape
Type: Enumeration Stereotype:
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to indicate that all columns are of a uniform topology, i.e., have the same number of
faces per column. This information is supplied by the RESQML writer to indicate the
complexity of the grid geometry, as an aide to the RESQML reader.

If a specific column shape is not appropriate, then use polygonal.

BUSINESS RULE: Should be consistent with the actual geometry of the grid.

Attributes
Name Type Notes
triangular External Reference All grid columns have 3 sides.
All grid columns have 4 sides. Includes
quadrilateral External Reference
tartan and corner point grids.
At least one grid column is a polygon,
polygonal External Reference
N>4.

Standard: v2.2 / Document: v1.0 / May 16, 2022 113


RESQML Technical Reference Guide v2. 2

5.20 ColumnSubnodePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/14/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Use this subnode construction if the number of subnodes per object varies from column
to column, but does not vary from layer to layer.

Attributes
Name Type Notes
Number of subnodes per object, with a
SubnodeCountPerObject AbstractIntegerArray different number in each column of the
grid.

Associations
Association Notes
From: ColumnSubnodePatch. To:
SubnodePatch
From:
ColumnLayerSubnodeTopology.ColumnSubnodeP atch
0..* To: ColumnSubnodePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 114


RESQML Technical Reference Guide v2. 2

5.21 ConnectionInterpretations
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/24/2014 Last modified:11/1/2016 Status: Proposed Author: mike.king
Notes: For each connection in the grid connection set representation, zero, one or more feature-
interpretations. The use of a jagged array allows multiple interpretations for each
connection, e.g., to represent multiple faults discretized onto a single connection. Note:
Feature-interpretations are not restricted to faults, so that a connection may also
represent a horizon or geobody boundary, for example.

Attributes
Name Type Notes
Indices for the interpretations for each
connection, if any. The use of a RESQML
InterpretationIndices JaggedArray jagged array allows zero or more than one
interpretation to be associated with a
single connection.

Associations
Association Notes
From:
ConnectionInterpretations.FeatureInterpret ation
1..* To: AbstractFeatureInterpretation
From:
GridConnectionSetRepresentation.ConnectionInterpret
ations
0..1 To: ConnectionInterpretations

Standard: v2.2 / Document: v1.0 / May 16, 2022 115


RESQML Technical Reference Guide v2. 2

5.22 Edges
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/11/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Unstructured cell grids require the definition of edges if the subnode attachment is of kind
edges.

Use Case: Finite elements, especially for higher order geometry.

BUSINESS RULE: Edges must be defined for unstructured cell grids if subnode nodes of kind edges are
used.

Attributes
Name Type Notes
Count PositiveLong Number of edges. Must be positive.
Defines a list of 2 nodes per edge.
NodesPerEdge AbstractIntegerArray
Count = 2 x EdgeCount

Associations
Association Notes
From: UnstructuredSubnodeTopology.Edges
0..1 To: Edges

Standard: v2.2 / Document: v1.0 / May 16, 2022 116


RESQML Technical Reference Guide v2. 2

5.23 GpGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/5/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: General purpose (GP) grid representation, which includes and/or extends the features
from all other grid representations. This general purpose representation is included in the
schema for research and/or advanced modeling purposes, but is not expected to be used
for routine data transfer.

Associations
Association Notes
From: GpGridRepresentation. To:
AbstractGridRepresentation
From:
GpGridRepresentation.ColumnLayerGpGrid
0..* To: ColumnLayerGpGrid
From:
GpGridRepresentation.UnstructuredGpGridPatch
0..* To: UnstructuredGpGridPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 117


RESQML Technical Reference Guide v2. 2

5.24 Grid2dRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:3/24/2020 Status: Approved Author: deny / JFR
Notes: Representation based on a 2D grid. For definitions of slowest and fastest axes of the
array, see Grid2dPatch.

Attributes
Name Type Notes
FastestAxisCount PositiveLong
SlowestAxisCount PositiveLong

Associations
Association Notes
From: Grid2dRepresentation.Geometry
To: PointGeometry
From: Grid2dRepresentation. To:
AbstractSurfaceRepresentation
From:
Seismic3dPostStackRepresentation.SeismicLatticeRep
resentation
To: Grid2dRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 118


RESQML Technical Reference Guide v2. 2

5.25 GridConnectionSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/18/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Representation that consists of a list of connections between grid cells, potentially on
different grids.

Connections are in the form of (Grid,Cell,Face)1<=>(Grid,Cell,Face)2 and are stored as


three integer pair arrays corresponding to these six elements.

Grid connection sets are the preferred means of representing faults on a grid. The use of
cell-face-pairs is more complete than single cell-faces, which are missing a
corresponding cell face entry, and only provide an incomplete representation of the
topology of a fault.

Unlike what is sometimes the case in reservoir simulation software, RESQML does not
distinguish between standard and non-standard connections.
Within RESQML, if a grid connection corresponds to a "nearest neighbor" as defined by
the cell indices, then it is never additive to the implicit nearest neighbor connection.

BUSINESS RULE: A single cell-face-pair should not appear within more than a single
grid connection set. This rule is designed to simplify the interpretation of properties
assigned to multiple grid connection sets, which might otherwise have the same property
defined more than once on a single connection, with no clear means of resolving the
multiple values.

Attributes
Name Type Notes
2 x #Connections array of cell indices for
CellIndexPairs AbstractIntegerArray
(Cell1,Cell2) for each connection.
Count PositiveLong count of connections. Must be positive.
2 x #Connections array of grid indices for
(Cell1,Cell2) for each connection. The grid
indices are obtained from the grid index
pairs.

If only a single grid is referenced from the


GridIndexPairs AbstractIntegerArray
grid index, then this array need not be
used.

BUSINESS RULE: If more than one grid


index pair is referenced, then this array
should appear.

Standard: v2.2 / Document: v1.0 / May 16, 2022 119


RESQML Technical Reference Guide v2. 2

Optional 2 x #Connections array of local


face-per-cell indices for (Cell1,Cell2) for
each connection. Local face-per-cell
indices are used because global face
indices need not have been defined.
LocalFacePerCellIndexPairs AbstractIntegerArray
If no face-per-cell definition occurs as part
of the grid representation, e.g., for a block-
centered grid, then this array need not
appear.

Associations
Association Notes
From:
GridConnectionSetRepresentation.ConnectionInterpret
ations
0..1 To: ConnectionInterpretations
From: GridConnectionSetRepresentation.Grid
1..* To: AbstractGridRepresentation
From: GridConnectionSetRepresentation.
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 120


RESQML Technical Reference Guide v2. 2

5.26 GridGeometryAttachment
Type: Enumeration Stereotype:
Detail: Created: 11/19/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Indexable grid elements to which point geometry may be attached to describe additional
grid geometry.

Attributes
Name Type Notes
Geometry may be attached to cells to
cells External Reference distort the geometry of that specific cell,
only (finite element grid).
Geometry may be attached to edges to
distort the geometry of all cells that refer to
that edge (finite element grid).
edges External Reference
BUSINESS RULE: The edges indexing
must be known or defined in the grid
representation if geometry is attached to
the edges.
Geometry may be attached to faces to
distort the geometry of all cells that refer to
that face (finite element grid).
faces External Reference
BUSINESS RULE: The faces indexing
must be known or defined in the grid
representation if geometry is attached to
the faces.
For column layer grids, these are the K
hinge node faces External Reference faces. For unstructured grids these faces
are enumerated as the hinge node faces.
Additional grid geometry may be attached
to split or truncated node patches for
column layer grids. All other node
nodes External Reference geometry attachment should be done
through the Points array of the
AbstractGridGeometry, not through the
additional grid geometry.
NKL points must be attached to the radial
origin polyline for a grid with radial
interpolation.

radial origin polyline External Reference BUSINESS RULE: The optional


radialGridIsComplete element must be
defined in the grid representation if
geometry is attached to the radial origin
polyline.

Standard: v2.2 / Document: v1.0 / May 16, 2022 121


RESQML Technical Reference Guide v2. 2

Geometry may be attached to subnodes to


distort the geometry of all cells that refer to
that subnode (finite element grid).
subnodes External Reference
BUSINESS RULE: An optional subnode
patch object must be defined in the grid
representation if geometry is attached to
the subnodes.

Standard: v2.2 / Document: v1.0 / May 16, 2022 122


RESQML Technical Reference Guide v2. 2

5.27 IjGaps
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional object used to indicate that adjacent columns of the model are split from each
other, which is modeled by introducing additional (split) pillars.

Use the ColumnLayerSplitColumnEdges object to specify the numbering of the additional column edges
generated by the IJ Gaps.

Attributes
Name Type Notes
List of columns for each of the split pillars.
This information is used to infer the grid
cell geometry.
ColumnsPerSplitPillar JaggedArray
BUSINESS RULE: The length of the first
list-of-lists array must match the
splitPillarCount.
Parent pillar index for each of the split
pillars. This information is used to infer the
grid cell geometry.
ParentPillarIndices AbstractIntegerArray
BUSINESS RULE: Array length must
match splitPillarCount.
Number of split pillars in the model. Count
SplitPillarCount PositiveLong
must be positive.

Associations
Association Notes
From: IjkGridGeometry.IjGaps
0..1 To: IjGaps

Standard: v2.2 / Document: v1.0 / May 16, 2022 123


RESQML Technical Reference Guide v2. 2

5.28 IjkGpGridPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/3/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to specify IJK grid patch(es) within a general purpose grid.

Multiple patches are supported.

Attributes
Name Type Notes
Count of I indices. Degenerate case (ni=0)
Ni NonNegativeLong
is allowed for GPGrid representations.
Count of J indices. Degenerate case (nj=0)
Nj NonNegativeLong
is allowed for GPGrid representations.
TRUE if the grid is periodic in J, i.e., has
the topology of a complete 360 degree
circle.
RadialGridIsComplete boolean
If TRUE, then NJL=NJ. Otherwise,
NJL=NJ+1

Associations
Association Notes
From: IjkGpGridPatch.Geometry
0..1 To: IjkGridGeometry
From: IjkGpGridPatch.TruncationCellPatch
0..1 To: TruncationCellPatch
From: ColumnLayerGpGrid.IjkGpGridPatch
0..* To: IjkGpGridPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 124


RESQML Technical Reference Guide v2. 2

5.29 IjkGridGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/18/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Explicit geometry definition for the cells of the IJK grid.

Grid options are also defined through this data-object.

Attributes
Name Type Notes
Indicates that the IJK grid is right handed,
as determined by the triple product of
GridIsRighthanded boolean
tangent vectors in the I, J, and K
directions.

Associations
Association Notes
From: IjkGridGeometry. To:
AbstractColumnLayerGridGeometry
From: IjkGridGeometry.IjGaps
0..1 To: IjGaps
From:
TruncatedIjkGridRepresentation.Geometry
To: IjkGridGeometry
From: IjkGpGridPatch.Geometry
0..1 To: IjkGridGeometry
From: IjkGridRepresentation.Geometry
0..1 To: IjkGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 125


RESQML Technical Reference Guide v2. 2

5.30 IjkGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/5/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Grid whose topology is characterized by structured column indices (I,J) and a layer index,
K.

Cell geometry is characterized by nodes on coordinate lines, where each column of the
model has 4 sides. Geometric degeneracy is permitted.

IJK grids support the following specific extensions:


• IJK radial grids
• K-Layer gaps
• IJ-Column gaps

Attributes
Name Type Notes
Count of cells in the I-direction in the grid.
Ni PositiveLong
Must be positive. I=1,...,NI, I0=0,...,NI-1.
Count of cells in the J-direction in the grid.
Nj PositiveLong
Must be positive. J=1,...,NJ, J0=0,...,NJ-1.
TRUE if the grid is periodic in J, i.e., has
the topology of a complete 360 degree
circle.

If TRUE, then NJL=NJ. Otherwise,


RadialGridIsComplete boolean NJL=NJ+1

May be used to change the grid topology


for either a Cartesian or a radial grid,
although radial grid usage is by far the
more common.

Associations
Association Notes
From: IjkGridRepresentation.KGaps
0..1 To: KGaps
From: IjkGridRepresentation.Geometry
0..1 To: IjkGridGeometry
From: IjkGridRepresentation. To:
AbstractColumnLayerGridRepresentation
From:
IjkParentWindow.ParentIjkGridRepresentation
To: IjkGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 126


RESQML Technical Reference Guide v2. 2

5.31 IjkParentWindow
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Parent window for any IJK grid.

Attributes
Name Type Notes
List of parent cells that are to be retained
at their original resolution and are not to be
included within a local grid. The "omit"
allows non-rectangular local grids to be
OmitParentCells AbstractIntegerArray specified.

0-based indexing follows NI x NJ x NK


relative to the parent window cell count—
not to the parent grid.

Associations
Association Notes
From:
IjkParentWindow.ParentIjkGridRepresentation
To: IjkGridRepresentation
From: IjkParentWindow.IRegrid
To: Regrid
From: IjkParentWindow.JRegrid
To: Regrid
From: IjkParentWindow.KRegrid
To: Regrid
From: IjkParentWindow. To:
AbstractParentWindow

Standard: v2.2 / Document: v1.0 / May 16, 2022 127


RESQML Technical Reference Guide v2. 2

5.32 IntervalGridCells
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/12/2014 Last modified:9/29/2021 Status: Approved Author: philippe /JFR
Notes: Specifies the (Grid,Cell) intersection of each interval of the representation, if any.
The information allows you to locate, on one or several grids, the intersection of volume (cells) and
surface (faces) elements with a wellbore trajectory (existing or planned), streamline
trajectories, or any polyline set.

Attributes
Name Type Notes
The number of non-null entries in the grid
CellCount PositiveLong
indices array.
The cell index for each interval of a
representation. The grid index is specified
by grid index array, to give the (Grid,Cell)
CellIndices AbstractIntegerArray index pair. Null values signify that interval
is not within a grid.
BUSINESS RULE : Size of array =
IntervalCount
The grid index for each interval of a
representation. The grid index is specified
by grid index array, to give the (Grid,Cell)
GridIndices AbstractIntegerArray index pair. Null values signify that the
interval is not within a grid.
BUSINESS RULE : Size of array =
IntervalCount
For each cell, these are the entry and exit
intersection faces of the trajectory in the
cell. Use null for missing intersections,
e.g., when a trajectory originates or
terminates within a cell or when an interval
LocalFacePairPerCellIndices AbstractIntegerArray
is not within a grid. The local face-per-cell
index is used because a global face index
need not have been defined on the grid.
BUSINESS RULE: Size of array = 2 *
IntervalCount

Associations
Association Notes
From: IntervalGridCells.Grid
1..* To: AbstractGridRepresentation
From: Reference to the intersected grid.
BlockedWellboreRepresentation.IntervalGridCells
To: IntervalGridCells
From: PolylineSetPatch.IntervalGridCells
0..1 To: IntervalGridCells

Standard: v2.2 / Document: v1.0 / May 16, 2022 128


RESQML Technical Reference Guide v2. 2

5.33 Intervals
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/21/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Refinement and/or coarsening per interval.

If there is a 1:1 correspondence between the parent and child cells, then this object is not needed.

Attributes
Name Type Notes
Weights that are proportional to the
relative sizes of child cells within each
ChildCellWeights AbstractFloatingPointArray
interval. The weights need not be
normalized.
The number of child cells in each interval.

If the child grid type is not commensurate


with the parent type, then this attribute is
ignored by a reader and its value should
be set to null value. For example, for a
parent IJK grid with a child unstructured
column-layer grid, then the child count is
non-null for a K regrid, but null for an I or J
ChildCountPerInterval AbstractIntegerArray
regrid.

BUSINESS RULES:
1.) The array length must be equal to
intervalCount.
2.) If the child grid type is commensurate
with the parent grid, then the sum of
values over all intervals must be equal to
the corresponding child grid dimension.
The number of intervals in the regrid
IntervalCount PositiveLong
description. Must be positive.
The number of parent cells in each
interval.

BUSINESS RULES:
ParentCountPerInterval AbstractIntegerArray 1.) The array length must be equal to
intervalCount.
2.) For the given parentIndex, the total
count of parent cells should not extend
beyond the boundary of the parent grid.

Associations
Association Notes
From: Regrid.Intervals
0..1 To: Intervals

Standard: v2.2 / Document: v1.0 / May 16, 2022 129


RESQML Technical Reference Guide v2. 2

5.34 IntervalStratigraphicUnits
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/13/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: A mapping from intervals to stratigraphic units for representations (grids or wellbore
frames). Since a single interval may corresponds to several units, the mapping is done
using a jagged array.

Attributes
Name Type Notes
Index of the stratigraphic unit per interval,
of a given stratigraphic column.

Notes:
1.) For grids:
if it does not exist a property kind "geologic
k" attached to the grid then
intervals = layers + K gaps
UnitIndices JaggedArray
else
intervals = values property of property kind
"geologic k"
2.) If there is no stratigraphic column, e.g.,
within salt, use null value

BUSINESS RULE: Array length must


equal the number of intervals.

Associations
Association Notes
From:
IntervalStratigraphicUnits.StratigraphicOrganizationInt e
rpretation
To:
AbstractGeologicUnitOrganizationInterpretation
From:
WellboreFrameRepresentation.IntervalStratigraphicUnit
s
0..* To: IntervalStratigraphicUnits
From:
AbstractGridRepresentation.Int ervalStratigraphic Units
0..1 To: IntervalStratigraphicUnits

Standard: v2.2 / Document: v1.0 / May 16, 2022 130


RESQML Technical Reference Guide v2. 2

5.35 KDirection
Type: Enumeration Stereotype:
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Enumeration used to specify if the direction of the coordinate lines is uniquely defined for
a grid. If not uniquely defined, e.g., for over-turned reservoirs, then indicate that the K
direction is not monotonic.

Attributes
Name Type Notes
K is increasing with depth,
down External Reference
dot(tangent,gradDepth)>0.
K is increasing with elevation,
up External Reference
dot(tangent,gradDepth)<0.
K is not monotonic with elevation, e.g., for
not monotonic External Reference
over-turned structures.

Standard: v2.2 / Document: v1.0 / May 16, 2022 131


RESQML Technical Reference Guide v2. 2

5.36 KGaps
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional data-object used to indicate that there are global gaps between layers in the
grid. With K gaps, the bottom of one layer need not be continuous with the top of the next
layer, so the resulting number of intervals is greater than the number of layers.

Attributes
Name Type Notes
Number of gaps between layers. Must be
positive.
Count PositiveLong
Number of intervals = gapCount + NK.
Boolean array of length NK-1. TRUE if
there is a gap after the corresponding
layer.

GapAfterLayer AbstractBooleanArray NKL = NK + gapCount + 1

BUSINESS RULE: gapCount must be


consistent with the number of gaps
specified by the gapAfterLayer array.

Associations
Association Notes
From: IjkGridRepresentation.KGaps
0..1 To: KGaps
From: ColumnLayerGpGrid.KGaps
0..1 To: KGaps

Standard: v2.2 / Document: v1.0 / May 16, 2022 132


RESQML Technical Reference Guide v2. 2

5.37 LocalGridSet
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to activate and/or deactivate the specified children grids as local grids on their
parents. Once activated, this object indicates that a child grid replaces local portions of
the corresponding parent grid. Specifically, properties and/or geometry in the region of a
parent window will be stored on both the parent and child grids, usually with differing
spatial resolutions. The choice of whether non-null properties are stored on both grids, or
only the child grid, is application specific. Parentage is inferred from the child grid
construction. Without a grid set activation, the local grids are always active. Otherwise,
the grid set activation is used to activate and/or deactivate the local grids in the set at
specific times.

Associations
Association Notes
From: LocalGridSet. To: AbstractObject
From: LocalGridSet.Activation
0..1 To: Activation
From: LocalGridSet.ChildGrid
1..* To: AbstractGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 133


RESQML Technical Reference Guide v2. 2

5.38 OverlapVolume
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/16/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional parent-child cell overlap volume information. If not present, then the CellOverlap
data-object lists the overlaps, but with no additional information.

Attributes
Name Type Notes
Parent-child cell volume overlap.
OverlapVolumes AbstractFloatingPointArray
BUSINESS RULE: Length of array must
equal the cell overlap count.
VolumeUom VolumeUom Units of measure for the overlapVolume.

Associations
Association Notes
From: CellOverlap.OverlapVolume
0..1 To: OverlapVolume

Standard: v2.2 / Document: v1.0 / May 16, 2022 134


RESQML Technical Reference Guide v2. 2

5.39 PillarShape
Type: Enumeration Stereotype:
Detail: Created: 9/21/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to indicate that all pillars are of a uniform kind, i.e., may be represented using the
same number of nodes per pillar. This information is supplied by the RESQML writer to
indicate the complexity of the grid geometry, as an aide to the RESQML reader.

If a combination of vertical and straight, then use straight.

If a specific pillar shape is not appropriate, then use curved.

BUSINESS RULE: Should be consistent with the actual geometry of the grid.

Attributes
Name Type Notes
If represented by a parametric line,
vertical External Reference
requires only a single control point per line.
If represented by a parametric line,
straight External Reference
requires 2 control points per line.
If represented by a parametric line,
curved External Reference
requires 3 or more control points per line.

Standard: v2.2 / Document: v1.0 / May 16, 2022 135


RESQML Technical Reference Guide v2. 2

5.40 Regrid
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: One-dimensional I, J, or K refinement and coarsening regrid specification.

The regrid description is organized using intervals. Within each interval, the number of parent and child
cells is specified. Parent and child grid cell faces are aligned at interval boundaries. By
default, child cells are uniformly sized within an interval unless weights are used to
modify their size.

If the child grid is a root grid with an independent geometry, then there will usually be only a single interval
for a regrid, because internal cell faces are not necessarily aligned.

Attributes
Name Type Notes
0-based index for the placement of the
InitialIndexOnParentGrid NonNegativeLong
window on the parent grid.

Associations
Association Notes
From: Regrid.Intervals
0..1 To: Intervals
From: IjkParentWindow.IRegrid
To: Regrid
From: IjkParentWindow.JRegrid
To: Regrid
From: ColumnLayerParentWindow.KRegrid
To: Regrid
From: IjkParentWindow.KRegrid
To: Regrid

Standard: v2.2 / Document: v1.0 / May 16, 2022 136


RESQML Technical Reference Guide v2. 2

5.41 SplitColumnEdges
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Column edges are needed to construct the indices for the cell faces for column-layer
grids. For split column-layer grids, the column edge indices must be defined explicitly.
Column edges are not required to describe the lowest order grid geometry, but may be
required for higher order geometries or properties.

Attributes
Name Type Notes
Column index for each of the split column
edges. Used to implicitly define column
ColumnPerSplitColumnEdge AbstractIntegerArray and cell faces. List-of-lists construction not
required because each split column edge
must be in a single column.
Number of split column edges in this grid.
Count PositiveLong
Must be positive.
Parent unsplit column edge index for each
ParentColumnEdgeIndices AbstractIntegerArray of the split column edges. Used to
implicitly define split face indexing.

Associations
Association Notes
From:
AdditionalGridTopology.SplitColumnEdges
0..1 To: SplitColumnEdges
From:
AbstractColumnLayerGridGeometry.SplitColumnEdges
0..1 To: SplitColumnEdges

Standard: v2.2 / Document: v1.0 / May 16, 2022 137


RESQML Technical Reference Guide v2. 2

5.42 SplitEdges
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/20/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: If split nodes are used in the construction of a column-layer grid and indexable elements
of kind edges are referenced, then the grid edges need to be re-defined.

Use Case: finite elements, especially for higher order geometry.

Attributes
Name Type Notes
Count PositiveLong Number of edges. Must be positive.
Association of faces with the split edges,
used to infer continuity of property,
FacesPerSplitEdge JaggedArray
geometry, or interpretation with an
attachment kind of edges.
Parent unsplit edge index for each of the
ParentEdgeIndices AbstractIntegerArray
additional split edges.

Associations
Association Notes
From: AdditionalGridTopology.SplitEdges
0..1 To: SplitEdges
From: SplitFaces.SplitEdges
0..1 To: SplitEdges

Standard: v2.2 / Document: v1.0 / May 16, 2022 138


RESQML Technical Reference Guide v2. 2

5.43 SplitFaces
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 1/12/2014 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional construction used to introduce additional faces created by split nodes. Used to
represent complex geometries, e.g., for stair-step grids and reverse faults.

Attributes
Name Type Notes
Cell index for each split face. Used to
CellPerSplitFace AbstractIntegerArray
implicitly define cell geometry.
Number of additional split faces. Count
Count PositiveLong
must be positive.
Parent unsplit face index for each of the
ParentFaceIndices AbstractIntegerArray
additional split faces.

Associations
Association Notes
From: SplitFaces.SplitEdges
0..1 To: SplitEdges
From: SplitNodePatch.SplitFaces
0..1 To: SplitFaces
From: AdditionalGridTopology.SplitFaces
0..1 To: SplitFaces

Standard: v2.2 / Document: v1.0 / May 16, 2022 139


RESQML Technical Reference Guide v2. 2

5.44 SplitNodePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Optional construction used to introduce additional nodes on coordinate lines. Used to
represent complex geometries, e.g., for stair-step grids and reverse faults.

BUSINESS RULE: Patch index must be positive because a patch index of 0 refers to the fundamental
column-layer coordinate line nodes.

Attributes
Name Type Notes
Cell indices for each of the split nodes.
Used to implicitly define cell geometry.
CellsPerSplitNode JaggedArray
List-of-lists construction used to support
split nodes shared between multiple cells.
Number of additional split nodes. Count
Count PositiveLong
must be positive.
Parent coordinate line node index for each
ParentNodeIndices AbstractIntegerArray of the split nodes. Used to implicitly define
cell geometry.

Associations
Association Notes
From: SplitNodePatch.SplitFaces
0..1 To: SplitFaces
From: AdditionalGridTopology.SplitNodePatch
0..1 To: SplitNodePatch
From:
AbstractColumnLayerGridGeometry.SplitNodePatch
0..1 To: SplitNodePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 140


RESQML Technical Reference Guide v2. 2

5.45 SubnodeNodeObject
Type: Enumeration Stereotype:
Detail: Created: 9/16/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: SubnodeNodeObject is used to specify the node object that supports the subnodes. This
determines the number of nodes per subnode and the continuity of the associated
geometry or property. For instance, for hexahedral cells, cell indicates a fixed value of 8,
while for an unstructured column layer grid, cell indicates that this count varies from
column to column.

Attributes
Name Type Notes
If geometry or properties are discontinuous
from cell to cell (i.e., their spatial support is
cell), then attach them to cell subnodes.
cell External Reference
BUSINESS RULE: If this object kind is
selected, then an ordered list of nodes per
cell must be specified or otherwise known.
If geometry or properties are continuous
between cells that share the same face
(i.e., their spatial support is the face), then
attach them to face subnodes.
face External Reference
BUSINESS RULE: If this object kind is
selected, then an ordered list of nodes per
face must be specified or otherwise
known.
If geometry and properties are continuous
between cells that share the same edge of
a face (i.e. their spatial support is the
edge), then attach them to edge
subnodes.
edge External Reference
BUSINESS RULE: If this object kind is
selected, then an ordered list of nodes per
edge must be specified or otherwise
known.

Standard: v2.2 / Document: v1.0 / May 16, 2022 141


RESQML Technical Reference Guide v2. 2

5.46 SubnodePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/11/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Each patch of subnodes is defined independently of the others. Number of nodes per
object is determined by the subnode k ind.

Attributes
Name Type Notes
Node weights for each subnode. Count of
nodes per subnode is known for each
specific subnode construction.

Data order consists of all the nodes for


each subnode in turn. For example, if
uniform and stored as a multi-dimensional
array, the node index cycles first.
NodeWeightsPerSubnode AbstractValueArray
BUSINESS RULE: Weights must be non-
negative.

BUSINESS RULE: Length of array must


be consistent with the sum of nodeCount x
subnodeCount per object, e.g., for 3
subnodes per edge (uniform), there are 6
weights.
SubnodeNodeObject SubnodeNodeObject

Associations
Association Notes
From: UniformSubnodePatch. To:
SubnodePatch
From: VariableSubnodePatch. To:
SubnodePatch
From: ColumnSubnodePatch. To:
SubnodePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 142


RESQML Technical Reference Guide v2. 2

5.47 SubnodeTopology
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/22/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Finite element subnode topology for an unstructured cell can be either variable or
uniform, but not columnar.

Associations
Association Notes
From:
SubnodeTopology.VariableSubnodePatch
0..* To: VariableSubnodePatch
From: SubnodeTopology.UniformSubnodePatch
0..* To: UniformSubnodePatch
From: ColumnLayerSubnodeTopology.
To: SubnodeTopology
From: UnstructuredSubnodeTopology.
To: SubnodeTopology

Standard: v2.2 / Document: v1.0 / May 16, 2022 143


RESQML Technical Reference Guide v2. 2

5.48 TruncatedIjkGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/12/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Grid class with an underlying IJK topology, together with a 1D split-cell list. The truncated
IJK cells have more than the usual 6 faces. The split cells are arbitrary polyhedra,
identical to those of an unstructured cell grid.

Attributes
Name Type Notes
Count of I-indices in the grid. Must be
Ni PositiveLong
positive.
Count of J-indices in the grid. Must be
Nj PositiveLong
positive.

Associations
Association Notes
From:
TruncatedIjkGridRepresentation.Geometry
To: IjkGridGeometry
From: TruncatedIjkGridRepresentation.
To:
AbstractTruncatedColumnLayerGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 144


RESQML Technical Reference Guide v2. 2

5.49 TruncatedUnstructuredColumnLayerGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/12/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Grid class with an underlying unstructured column-layer topology, together with a 1D
split-cell list. The truncated cells have more than the usual number of faces within each
column. The split cells are arbitrary polyhedra, identical to those of an unstructured cell
grid.

Attributes
Name Type Notes
Number of unstructured columns in the
ColumnCount PositiveLong
grid. Must be positive.

Associations
Association Notes
From:
TruncatedUnstructuredColumnLayerGridRepresentati
on. To:
AbstractTruncatedColumnLayerGridRepresentation
From:
TruncatedUnstructuredColumnLayerGridRepresentati
on.Geometry
To: UnstructuredColumnLayerGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 145


RESQML Technical Reference Guide v2. 2

5.50 TruncationCellPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/3/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Truncation definitions for the truncated and split cells.

BUSINESS RULE: Patch Index must be positive because a patch index of 0 refers to the fundamental
column-layer coordinate line nodes and cells.

Attributes
Name Type Notes
Local cell face index for those faces that
are retained from the parent cell in the
definition of the truncation cell.
LocalFacesPerCell JaggedArray
The use of a local cell-face index, e.g.,
0...5 for an IJK cell, can be used even if
the face indices have not been defined.
Definition of the truncation faces is in
terms of an ordered list of nodes. Node
indexing is EXTENDED, i.e., is based on
the list of untruncated grid nodes (always
NodesPerTruncationFace JaggedArray
first) plus the split nodes (if any) and the
truncation face nodes. Relative order of
split nodes and truncation face nodes is
set by the pillar indices.
Parent cell index for each of the truncation
cells.
ParentCellIndices AbstractIntegerArray
BUSINESS RULE: Size must match
truncationCellCount
Number of polyhedral cells created by
TruncationCellCount PositiveLong truncation. Must be positive. Note: Parent
cells are replaced.
Boolean mask used to indicate which
truncation cell faces have an outwardly
TruncationCellFaceIs Right Handed AbstractBooleanArray directed normal, following a right hand
rule. Data size and order follows the
truncationFacesPerCell list-of-lists.
Number of additional faces required for the
split and truncation construction. The
construction does not modify existing face
definitions, but instead uses these new
TruncationFaceCount PositiveLong faces to redefine the truncated cell
geometry. Must be positive.

These faces are added to the enumeration


of faces for the grid

Standard: v2.2 / Document: v1.0 / May 16, 2022 146


RESQML Technical Reference Guide v2. 2

Truncation face index for the additional cell


faces that are required to complete the
definition of the truncation cell.
TruncationFacesPerCell JaggedArray
The resulting local cell face index follows
the local faces-per-cell list, followed by the
truncation faces in the order within the list-
of-lists constructions.
Number of additional nodes required for
the truncation construction. Must be
TruncationNodeCount PositiveLong positive. Uses a separate enumeration and
does not increase the number of nodes,
except as noted below.

Associations
Association Notes
From: IjkGpGridPatch.TruncationCellPatch
0..1 To: TruncationCellPatch
From:
AbstractTruncatedColumnLayerGridRepresentation.T
runcationCellPatch
To: TruncationCellPatch
From:
UnstructuredColumnLayerGpGridPatch. TruncationCell
Patch
0..1 To: TruncationCellPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 147


RESQML Technical Reference Guide v2. 2

5.51 UniformSubnodePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/14/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Use this subnode construction if the number of subnodes is the same for every object,
e.g., 3 subnodes per edge for all edges.

Attributes
Name Type Notes
Number of subnodes per object, with the
SubnodeCountPerObject PositiveLong same number for each of this data-object
kind in the grid.

Associations
Association Notes
From: UniformSubnodePatch. To:
SubnodePatch
From: SubnodeTopology.UniformSubnodePatch
0..* To: UniformSubnodePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 148


RESQML Technical Reference Guide v2. 2

5.52 UnstructuredColumnEdges
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Column edges are used to construct the index for faces. For unstructured column-layer
grids, the column edge indices must be defined explicitly. Column edges are not required
to describe lowest order grid geometry, but may be needed for higher order geometries
or properties.

Attributes
Name Type Notes
Number of unstructured column edges in
Count PositiveLong
this grid. Must be positive.
Definition of the column edges in terms of
the pillars-per-column edge. Pillar count
PillarsPerColumnEdge JaggedArray per edge is usually 2, but the list-of-lists
construction is used to allow column edges
to be defined by more than 2 pillars.

Associations
Association Notes
From:
UnstructuredColumnLayerGridGeometry.Unstructured
ColumnEdges
0..1 To: UnstructuredColumnEdges
From:
AdditionalGridTopology.UnstructuredColumnEdges
0..1 To: UnstructuredColumnEdges

Standard: v2.2 / Document: v1.0 / May 16, 2022 149


RESQML Technical Reference Guide v2. 2

5.53 UnstructuredColumnLayerGpGridPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/3/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to specify unstructured column-layer grid patch(es) within a general purpose grid.

Multiple patches are supported.

Attributes
Name Type Notes
Number of unstructured columns.
UnstructuredColumnCount NonNegativeLong Degenerate case (count=0) is allowed for
GPGrid.

Associations
Association Notes
From:
UnstructuredColumnLayerGpGridPatch.Geometry
0..1 To: UnstructuredColumnLayerGridGeometry
From:
UnstructuredColumnLayerGpGridPatch. TruncationCell
Patch
0..1 To: TruncationCellPatch
From:
ColumnLayerGpGrid.UnstructuredColumnLayerGpGridP
atch
0..* To: UnstructuredColumnLayerGpGridPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 150


RESQML Technical Reference Guide v2. 2

5.54 UnstructuredColumnLayerGridGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Description of the geometry of an unstructured column-layer grid, e.g., parity and pinch,
together with its supporting topology.

Unstructured column-layer cell geometry is derived from column-layer cell geometry and hence is based
upon nodes on coordinate lines.

Geometry is contained within the representation of a grid.

Attributes
Name Type Notes
List of columns that are right handed.
Right handedness is evaluated following
ColumnIsRightHanded AbstractBooleanArray
the pillar order and the K-direction tangent
vector for each column.
ColumnShape ColumnShape
Number of pillars in the grid. Must be
PillarCount PositiveLong positive. Pillars are used to describe the
shape of the columns in the grid.
List of pillars for each column. The pillars
define the corners of each column.

The number of pillars per column can be


obtained from the offsets in the first list-of-
PillarsPerColumn JaggedArray
lists array.

BUSINESS RULE: The length of the first


array in the list -of-lists construction must
equal the columnCount.

Associations
Association Notes
From:
UnstructuredColumnLayerGridGeometry.Unstructured
ColumnEdges
0..1 To: UnstructuredColumnEdges
From:
UnstructuredColumnLayerGridGeometry. To:
AbstractColumnLayerGridGeometry
From:
UnstructuredColumnLayerGpGridPatch.Geometry
0..1 To: UnstructuredColumnLayerGridGeometry
From:
TruncatedUnstructuredColumnLayerGridRepresentati
on.Geometry
To: UnstructuredColumnLayerGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 151


RESQML Technical Reference Guide v2. 2

Association Notes
From:
UnstructuredColumnLayerGridRepre sentation.Geome
try
0..1 To: UnstructuredColumnLayerGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 152


RESQML Technical Reference Guide v2. 2

5.55 UnstructuredColumnLayerGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/5/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Grid whose topology is characterized by an unstructured column index and a layer index,
K.

Cell geometry is characterized by nodes on coordinate lines, where each column of the model may have
an arbitrary number of sides.

Attributes
Name Type Notes
Number of unstructured columns in the
ColumnCount PositiveLong
grid. Must be positive.

Associations
Association Notes
From:
UnstructuredColumnLayerGridRepre sentation.
To: AbstractColumnLayerGridRepresentation
From:
UnstructuredColumnLayerGridRepre sentation.Geome
try
0..1 To: UnstructuredColumnLayerGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 153


RESQML Technical Reference Guide v2. 2

5.56 UnstructuredGpGridPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/3/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Used to specify unstructured cell grid patch(es) within a general purpose grid.

Multiple patches are supported.

Attributes
Name Type Notes
Number of unstructured cells. Degenerate
UnstructuredCellCount NonNegativeLong
case (count=0) is allowed for GPGrid.

Associations
Association Notes
From: UnstructuredGpGridPatch.Geometry
0..1 To: UnstructuredGridGeometry
From:
GpGridRepresentation.UnstructuredGpGridPatch
0..* To: UnstructuredGpGridPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 154


RESQML Technical Reference Guide v2. 2

5.57 UnstructuredGridGeometry
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Description of the geometry of an unstructured cell grid, which includes geometric
characteristics, e.g., cell face parity, and supporting topology.

Each grid cell is defined by a (signed) list of cell faces. Each cell face is defined by a list of nodes.

Attributes
Name Type Notes
Boolean mask used to indicate which cell
faces have an outwardly directed normal
following a right hand rule. Array length is
CellFaceIsRightHanded AbstractBooleanArray
the sum of the cell face count per cell, and
the data follows the order of the faces per
cell RESQMLlist-of-lists.
CellShape CellShape
Total number of faces in the grid. Must be
FaceCount PositiveLong
positive.
List of faces per cell. Face count per cell
can be obtained from the offsets in the first
list-of-lists array.
FacesPerCell JaggedArray
BUSINESS RULE: CellCount must match
the length of the first list-of-lists array.
Total number of nodes in the grid. Must be
NodeCount PositiveLong
positive.
List of nodes per face. Node count per
face can be obtained from the offsets in
the first list-of-lists array.
NodesPerFace JaggedArray
BUSINESS RULE: FaceCount must match
the length of the first list- of-lists array.

Associations
Association Notes
From:
UnstructuredGridGeometry.UnstructuredGridHingeNod
eFaces
0..1 To: UnstructuredGridHingeNodeFaces
From: UnstructuredGridGeometry. To:
AbstractGridGeometry
From:
UnstructuredGridGeometry.UnstructuredSubnodeTopol
ogy
0..1 To: UnstructuredSubnodeTopology
From:
UnstructuredGridRepresentation.Geometry
0..1 To: UnstructuredGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 155


RESQML Technical Reference Guide v2. 2

Association Notes
From: UnstructuredGpGridPatch.Geometry
0..1 To: UnstructuredGridGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 156


RESQML Technical Reference Guide v2. 2

5.58 UnstructuredGridHingeNodeFaces
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/9/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Hinge nodes define a triangulated interpolation on a cell face. In practice, they arise on
the K faces of column layer cells and are used to add additional geometric resolution to
the shape of the cell. The specification of triangulated interpolation also uniquely defines
the interpolation schema on the cell face, and hence the cell volume.

For an unstructured cell grid, the hinge node faces need to be defined explicitly.

This hinge node faces data-object is optional and is only expected to be used if the hinge node faces
higher order grid point attachment arises. Hinge node faces are not supported for
property attachment. Instead use a subrepresentation or an attachment kind of faces or
faces per cell.

BUSINESS RULE: Each cell must have either 0 or 2 hinge node faces, so that the two hinge nodes for
the cell may be used to define a cell center line and a cell thickness.

Attributes
Name Type Notes
Number of K faces. This count must be
Count PositiveLong
positive.
List of faces to be identified as K faces for
hinge node geometry attachment.
FaceIndices AbstractIntegerArray
BUSINESS RULE: Array length equals K
face count.

Associations
Association Notes
From:
UnstructuredGridGeometry.UnstructuredGridHingeNod
eFaces
0..1 To: UnstructuredGridHingeNodeFaces

Standard: v2.2 / Document: v1.0 / May 16, 2022 157


RESQML Technical Reference Guide v2. 2

5.59 UnstructuredGridRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/5/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Unstructured grid representation characterized by a cell count, and potentially nothing
else. Both the oldest and newest simulation formats are based on this format.

Attributes
Name Type Notes
Number of cells in the grid. Must be
CellCount PositiveLong
positive.

Associations
Association Notes
From:
UnstructuredGridRepresentation.OriginalCellIndex
0..1 To: AlternateCellIndex
From:
UnstructuredGridRepresentation.Geometry
0..1 To: UnstructuredGridGeometry
From: UnstructuredGridRepre sentation.
To: AbstractGridRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 158


RESQML Technical Reference Guide v2. 2

5.60 UnstructuredSubnodeTopology
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/11/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: If edge subnodes are used, then edges must be defined. If cell subnodes are used,
nodes per cell must be defined.

Attributes
Name Type Notes
NodesPerCell JaggedArray

Associations
Association Notes
From: UnstructuredSubnodeTopology.
To: SubnodeTopology
From: UnstructuredSubnodeTopology.Edges
0..1 To: Edges
From:
UnstructuredGridGeometry.UnstructuredSubnodeTopol
ogy
0..1 To: UnstructuredSubnodeTopology
From:
AdditionalGridTopology.UnstructuredSubnodeTopology
0..1 To: UnstructuredSubnodeTopology

Standard: v2.2 / Document: v1.0 / May 16, 2022 159


RESQML Technical Reference Guide v2. 2

5.61 VariableSubnodePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/11/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: If the number of subnodes per data-object are variable for each data-object, use this
subnode construction.

Attributes
Name Type Notes
ObjectIndices AbstractIntegerArray Indices of the selected data-objects
Number of subnodes per selected data-
SubnodeCountPerSelectedObject AbstractIntegerArray
object.

Associations
Association Notes
From: VariableSubnodePatch. To:
SubnodePatch
From:
SubnodeTopology.VariableSubnodePatch
0..* To: VariableSubnodePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 160


RESQML Technical Reference Guide v2. 2

6 Interpretations
Package: xsd_schemas

Notes: This package contains the main classes used to define and exchange data for geologic
interpretations in RESQML.
RESQML uses the definition of David Gawith, which explains an interpretation as a single
consistent description of a feature. An interpretation is subjective and very strongly tied to
the intellectual activity of the project team members. The initial curiosity and reasoning of
the people on the project team initiates the early pre-screening campaign (remote
sensing, surveys). They make hypotheses that consist of as many interpretations as
necessary to describe the features (Gawith and Gutteridge 2007).
NOTE: The formal name is actually "feature-interpretation" and many of the class names
use this full term. For conciseness of documentation, we use simply "interpretation"
where this usage is not confusing.
RESQML now uses the term “interpretation” instead of alternative terms that were used
in V1.1, such as “version” or “opinion".
Most of the information contained as attributes or enumerations in individual
interpretation or organization interpretation will help users understand how the
representations of the geological objects should be built or have been built, if the
representation is already associated to the given interpretation.

AbstractObject
«XSDcomplexType» «XSDcomplexType,XSDtopLevelElement»
AbstractContactInterpretationPart AbstractFeatureInterpretation
+PartOf
«XSDelement»
0..1 + Domain: Domain [0..1]

+ContactInterpretation

«XSDcomplexType,XSDtopLevelElement»
0..*
AbstractOrganizationInterpretation

«XSDcomplexType» «XSDcomplexType»
BinaryContactInterpretationPart MultipleContactInterpretationPart
«XSDelement» «XSDelement»
+ DirectObject: ContactElement + With: NonNegativeLong [1..-1]
+ Subject: ContactElement
string + Verb: ContactVerb
«enumeration»
ContactVerb
stops
splits
crosses
«XSDcomplexType»
DataObjectReference
«XSDelement»
+ EnergisticsUri: anyURI [0..1]
+ ExtensionNameValue: ExtensionNameValue [0..-1]
string + LocatorUrl: anyURI [0..-1]
«enumeration» + ObjectVersion: String64 [0..1]
ContactSide + QualifiedType: QualifiedType
+ Title: String2000
footwall + Uuid: UuidString
hanging wall
north
south
east
«XSDcomplexType»
west
ContactElement
younger
older «XSDelement»
both + Qualifier: ContactSide [0..1]
+ SecondaryQualifier: ContactMode [0..1]
string
«enumeration»
ContactMode
conformable
extended
unconformable

Standard: v2.2 / Document: v1.0 / May 16, 2022 161


RESQML Technical Reference Guide v2. 2

AbstractFeatureInterpretation
«XSDcomplexType,XSDtopLevelElement»
EarthModelInterpretation

AbstractOrganizationInterpretation
«XSDcomplexType,XSDtopLevelElement»
+Structure 0..*
AbstractGeologicUnitOrganizationInterpretation
AbstractOrganizationInterpretation «enumeration»
OrderingCriteria «XSDelement»
«XSDcomplexType,XSDtopLevelElement» + AscendingOrderingCriteria: OrderingCriteria
StructuralOrganizationInterpretation age +StratigraphicColumn
0..1
«XSDelement» apparent depth
AbstractObject
+ AscendingOrderingCriteria: OrderingCriteria
+ BottomFrontier: DataObjectReference [0..-1] «XSDcomplexType,XSDtopL...
+ Sides: DataObjectReference [0..-1] StratigraphicColumn
+ TopFrontier: DataObjectReference [0..-1]
the DataobjectCollection must only
contain WellboreInterpretation i.e.
its homogeneousdatatype attribute
must be +WellboreInterpretationSet 0..* +Ranks 1..*
resqml22.WellboreInterpretation +StratigraphicOccurrences 0..* +Fluid 0..*
+OrderedBoundaryFeatureInterpretation 0..* AbstractObject «XSDcomplexType,XSDtopLevelElement»
StratigraphicColumnRankInterpretation «XSDcomplexType,XSDtopLevelEleme... AbstractOrganizationInterpretation
«XSDcomplexType» «XSDcomplexType,XSDtopLevelEle...
GeologicUnitOccurrenceInterpretation «XSDcomplexType,XSDtopLevelEl...
BoundaryFeatureInterpretationPlusItsRank DataobjectCollection +IsOccurrenceOf
«XSDelement» RockFluidOrganizationInterpretation
«XSDelement» + RankInStratigraphicColumn: NonNegativeLong 0..1
«XSDelement»
+ StratigraphicRank: NonNegativeLong [0..1] + HomogeneousDatatype: boolean [0..1]
+ Kind: CollectionKindExt [0..1]
+GeologicUnit 0..*

+StratigraphicUnits 1..* AbstractFeatureInterpretation


AbstractFeatureInterpretation
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType,XSDtopLe... StratigraphicUnitInterpretation GeologicUnitInterpretation
WellboreInterpretation
«XSDelement»
«XSDelement» + DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
+ IsDrilled: boolean + DepositionalFacies: DepositionalFaciesKindExt [0..1]
+ GeologicUnit3dShape: Shape3dExt [0..1]
+ GeologicUnitComposition: LithologyKindExt [0..1]
+ GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1]

+HasOccurredDuring «XSDcomplexType» +HasOccurredDuring AbstractObject


AbstractTimeInterval AbstractObject
0..1 0..1 «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
string AbstractFeatureInterpretation +InterpretedFeature Features::AbstractFeature
«enumerati...
«XSDelement» «XSDelement»
Domain
+ Domain: Domain [0..1] + IsWellKnown: boolean
depth
time
«XSDcomplexType» mixed string
GeologicTimeBasedTimeInterval «XSDcomplexType» «enumeration»
GeneticBoundaryBasedTimeInterval Shape3d
string
string string sheet
«enumeration» «enumeration» dyke
+Start +End «enumeration» GeologicUnitMaterialEmplacement
DepositionalFaciesKind DepositionalEnvironmentKind dome
«XSDcomplexType» mushroom
continental intrusive
CommonTypes:: +AbsoluteAge marineshallow shoreline shoreline tidedominated channel
paralic shallow marine non-intrusive
GeologicTime 0..1
marineshallow shoreline shoreline tideinfluenced deep marine delta
marineshallow shoreline shoreline wavedominated carbonate continental dune
«XSDelement» marineshallow shoreline shoreline waveinfluenced carbonate paralic shallow marine fan
+ AgeOffsetAttribute: long [0..1] string marineshallow strandplain carbonate deep marine reef
+ DateTime: TimeStamp +ChronoTop +ChronoBottom
marineshallow tidalflat «XSDcomplexType,XSDtopLevelElement» wedge
«enumeration» GeologicUnitInterpretation
ThrowKind «XSDcomplexType,XSDtopLev...
BoundaryFeatureInterpretation «XSDelement»
«XSDcomplexType» reverse EnumExtensionPattern
strike-slip + DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
FaultThrow «XSDelement» «XSDunion» + DepositionalFacies: DepositionalFaciesKindExt [0..1]
normal + OlderPossibleAge: long [0..1] EnumExtensionPattern DepositionalEnvironmentKindExt EnumExtensionPattern
«XSDelement» thrust + GeologicUnit3dShape: Shape3dExt [0..1]
+ YoungerPossibleAge: long [0..1] «XSDunion» + GeologicUnitComposition: LithologyKindExt [0..1] «XSDunion»
+ Throw: ThrowKindExt [1..*] scissor
variable DepositionalFaciesKindExt + GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1] Shape3dExt
+ThrowInterpretation 0..*

«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelE... «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLe...


«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
FaultInterpretation GeobodyBoundaryInterpretation FluidBoundaryInterpretation HorizonInterpretation GeobodyInterpretation
StratigraphicUnitInterpretation RockFluidUnitInterpretation
«XSDelement» «XSDelement» «XSDelement» «XSDelement»
«XSDelement» «XSDelement»
+ DipDirectionNorthReferenceKind: NorthReferenceKind [0..1] + BoundaryRelation: BoundaryRelation [0..-1] + FluidContact: FluidContact + IsConformableAbove: boolean [0..1]
+ DepositionMode: DepositionMode [0..1] + Phase: Phase [0..1]
+ IsListric: boolean [0..1] + IsConformableAbove: boolean [0..1] + IsConformableBelow: boolean [0..1]
+ MaxThickness: LengthMeasure [0..1]
+ IsSealed: boolean [0..1] + IsConformableBelow: boolean [0..1] + SequenceStratigraphySurface: SequenceStratigraphySurfaceKindExt [0..1]
+ MinThickness: LengthMeasure [0..1]
+ MaximumThrow: LengthMeasure [0..1] string + StratigraphicRole: StratigraphicRole [0..-1]
+ StratigraphicRole: StratigraphicRole [0..1]
+ MeanAzimuth: PlaneAngleMeasure [0..1]
+ MeanDip: PlaneAngleMeasure [0..1] «enumeration» string
FluidContact
«enumeration»
free water contact Phase
gas oil contact
gas water contact aquifer
string string gas cap
seal
water oil contact «enumeration» «enumeration» oil column
StratigraphicRole DepositionMode seal
string chronostratigraphic proportional between top and bottom
«enumeration» lithostratigraphic parallel to bottom
SequenceStratigraphySurfaceKind biostratigraphic parallel to top
EnumExtensionPattern magnetostratigraphic parallel to another boundary
«XSDunion» chemostratigraphic
SequenceStratigraphySurfaceKindExt flooding seismicstratigraphic
maximum flooding
regressive
maximum regressive
transgressive
maximum transgressive
abandonment
correlative conformity
ravinement
sequence boundary

Standard: v2.2 / Document: v1.0 / May 16, 2022 162


RESQML Technical Reference Guide v2. 2

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
AbstractFeatureInterpretation
«XSDelement»
+ Domain: Domain [0..1]

+PartOf 0..1

«XSDcomplexType,XSDtopLevelEleme...
BoundaryFeatureInterpretation AbstractTechnicalFeature
«XSDelement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType»
CulturalFeature GenericFeatureInterpretation AbstractOrganizationInterpretation
+ OlderPossibleAge: long [0..1] +ContactInterpretation
AbstractContactInterpretationPart
+ YoungerPossibleAge: long [0..1] + CulturalFeatureKind: CulturalFeatureKindExt 0..*

undaryFeatureInterpretation 0..1

«XSDcomplexType,XSDtopLevelElement»
FaultInterpretation
«XSDelement»
+ DipDirectionNorthReferenceKind: NorthReferenceKind [0..1]
+ IsListric: boolean [0..1]
BUSINESS RULE: BottomFrontier, TopFrontier and
+ IsSealed: boolean [0..1] Sides either point to a CulturalFeature whose Kind is
+ MaximumThrow: LengthMeasure [0..1] model frontier or to a «enumeration»
BoundaryFeatureInterpretation if the frontier is
+ MeanAzimuth: PlaneAngleMeasure [0..1] actually a geologic surface
OrderingCriteria «XSDcomplexType,XSDtopLevelElement»
+ MeanDip: PlaneAngleMeasure [0..1] age AbstractGeologicUnitOrganizationInterpretation
apparent depth
«XSDelement»
«XSDcomplexType,XSDtopLevelElement» + AscendingOrderingCriteria: OrderingCriteria
This instance of a DataObjectCollection may
StructuralOrganizationInterpretation
only have FaultInterpretations
«XSDelement»
+ AscendingOrderingCriteria: OrderingCriteria
+ BottomFrontier: DataObjectReference [0..-1]
AbstractObject + Sides: DataObjectReference [0..-1]
+ TopFrontier: DataObjectReference [0..-1]
«XSDcomplexType,XSDtopLevelEle...
DataobjectCollection
AbstractObject «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
«XSDelement» GeologicUnitOccurrenceInterpretation RockFluidOrganizationInterpretation
+ HomogeneousDatatype: boolean [0..1] «XSDcomplexType,XSDtopL...
+ Kind: CollectionKindExt [0..1] StratigraphicColumn
0..1
+FeatureInterpretationSet

«XSDcomplexType» «XSDcomplexType,XSDtopLevelElement» +IsOccurrenceOf


BoundaryFeatureInterpretationPlusItsRank 0..*
StratigraphicColumnRankInterpretation
+Ranks 0..1
«XSDelement» 1..* «XSDelement»
+OrderedBoundaryFeatureInterpretation
+ StratigraphicRank: NonNegativeLong [0..1] + RankInStratigraphicColumn: NonNegativeLong

+GeologicUnit 0..*
+StratigraphicUnits 1..*
«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType,XSDtopLevelElement» GeologicUnitInterpretation
StratigraphicUnitInterpretation
«XSDelement»
+ DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
+ DepositionalFacies: DepositionalFaciesKindExt [0..1]
+ GeologicUnit3dShape: Shape3dExt [0..1]
+ GeologicUnitComposition: LithologyKindExt [0..1]
+ GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1]

AbstractObject AbstractObject
«XSDcomplexType,XSDtop... «XSDcomplexType,XSDtopLevelE...
AbstractFeatureInterpretation +InterpretedFeature Features::AbstractFeature
«XSDelement» «XSDelement»
+ Domain: Domain [0..1] + IsWellKnown: boolean

«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelEl...
GeologicUnitInterpretation AbstractOrganizationInterpretation
«XSDelement»
+ DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
+ DepositionalFacies: DepositionalFaciesKindExt [0..1]
+ GeologicUnit3dShape: Shape3dExt [0..1]
+ GeologicUnitComposition: LithologyKindExt [0..1]
+ GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1]
0..1

«XSDcomplexType,XSDt...
RockFluidUnitInterpretation
«XSDelement» «XSDcomplexType»
+RockFluidUnit
+ Phase: Phase [0..1] VoidageGroupInterpretation
0..*
FluidUnits 0..3

+Stratigraphy 0..1

«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType»
+Fluids 0..1 AbstractGeologicUnitOrganizationInterpretation
ReservoirCompartmentUnitInterpretation
«XSDcomplexType,XSDtopLevelEl... «XSDelement»
RockFluidOrganizationInterpretation + AscendingOrderingCriteria: OrderingCriteria

+ReservoirCompartment 1

«XSDcomplexType»
ReservoirCompartmentInterpretation+Compartments
0..*

Standard: v2.2 / Document: v1.0 / May 16, 2022 163


RESQML Technical Reference Guide v2. 2

6.1 AbstractContactInterpretationPart
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:1/1/2017 Status: Approved Author: deny
Notes: The parent class of an atomic, linear, or surface geologic contact description.

When the contact is between two surface representations (e.g., fault/fault, horizon/fault, horizon/horizon),
then the contact is a line.
When the contact is between two volume representations (stratigraphic unit/stratigraphic unit), then the
contact is a surface.
A contact interpretation can be associated with other contact interpretations in an organization
interpretation.
To define a contact representation, you must first define a contact interpretation.

Associations
Association Notes
From: Indicates the interpretation that contains the contact,
AbstractContactInterpretationPart.PartOf for example, the horizon or the fault that contains a
0..1 To: AbstractFeatureInterpretation unit/unit contact.
From:
AbstractOrganizationInterpretation.ContactInterpretatio
n
0..* To: AbstractContactInterpretationPart
From: BinaryContactInterpretationPart.
To: AbstractContactInterpretationPart
From: MultipleContactInterpretationPart.
To: AbstractContactInterpretationPart

Standard: v2.2 / Document: v1.0 / May 16, 2022 164


RESQML Technical Reference Guide v2. 2

6.2 AbstractFeatureInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:1/1/2017 Status: Approved Author: deny
Notes: The main class that contains all of the other feature interpretations included in an
interpreted model.

Attributes
Name Type Notes
An enumeration that specifies in which
domain the interpretation of an
Domain Domain
AbstractFeature has been performed:
depth, time, mixed (= depth + time )

Associations
Association Notes
From: Indicates the feature that is interpreted by this
AbstractFeatureInterpretation.InterpretedFeat ure interpretation.
To: AbstractFeature
From: Indicates that the interpretation is valid only for a
AbstractFeatureInterpretation.HasOccurredDuring specific time interval. For example, a fault feature can
0..1 To: AbstractTimeInterval be normal for a certain period and inverse during
another period.
From: AbstractFeatureInterpretation. To:
AbstractObject
From: BoundaryFeatureInterpretation.
To: AbstractFeatureInterpretation
From:
ConnectionInterpretations.FeatureInterpret ation
1..* To: AbstractFeatureInterpretation
From: EarthModelInterpretation. To:
AbstractFeatureInterpretation
From: GeologicUnitInterpretation. To:
AbstractFeatureInterpretation
From: AbstractOrganizationInterpretation.
To: AbstractFeatureInterpretation
From: GenericFeatureInterpretation. To:
AbstractFeatureInterpretation
From: ProxyConnector. To:
AbstractFeatureInterpretation
From: WellboreInterpretation. To:
AbstractFeatureInterpretation
From: Indicates the interpretation that contains the contact,
AbstractContactInterpretationPart.PartOf for example, the horizon or the fault that contains a
0..1 To: AbstractFeatureInterpretation unit/unit contact.

Standard: v2.2 / Document: v1.0 / May 16, 2022 165


RESQML Technical Reference Guide v2. 2

6.3 AbstractGeologicUnitOrganizationInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:7/19/2021 Status: Approved Author: deny
Notes: The main class that defines the relationships between the stratigraphic units and provides
the stratigraphic hierarchy of the Earth.

BUSINESS RULE: A stratigraphic organization must be in a ranked order from a lower rank to an upper
rank. For example, it is possible to find previous unit containment relationships between
several ranks.

Attributes
Name Type Notes
AscendingOrderingCriteria OrderingCriteria

Associations
Association Notes
From:
AbstractGeologicUnitOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From: StratigraphicOccurrenceInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation
From: GeologicUnitOccurrenceInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation
From: StratigraphicColumnRankInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation
From: VoidageGroupInterpretation.Stratigraphy
0..1 To:
AbstractGeologicUnitOrganizationInterpretation
From:
IntervalStratigraphicUnits.StratigraphicOrganizationInt e
rpretation
To:
AbstractGeologicUnitOrganizationInterpretation
From: StratigraphicColumnRankInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 166


RESQML Technical Reference Guide v2. 2

6.4 AbstractOrganizationInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: The main class used to group features into meaningful units as a step in working towards
the goal of building an earth model (the organization of all other organizations in
RESQML).
An organization interpretation:
• Is typically comprised of one stack of its contained elements.
• May be built on other organization interpretations.

Typically contains:
• contacts between the elements of this stack among themselves.
• contacts between the stack elements and other organization elements.

Associations
Association Notes
From:
AbstractOrganizationInterpretation.ContactInterpretatio
n
0..* To: AbstractContactInterpretationPart
From: AbstractOrganizationInterpretation.
To: AbstractFeatureInterpretation
From: StructuralOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From: VoidageGroupInterpretation. To:
AbstractOrganizationInterpretation
From:
AbstractGeologicUnitOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From: MarkerInterval.Organization
0..1 To: AbstractOrganizationInterpretation
From: RockFluidOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From:
AbstractStratigraphicOrganizationInterpretation.
To: AbstractOrganizationInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 167


RESQML Technical Reference Guide v2. 2

6.5 AbstractTimeInterval
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/10/2014 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: The abstract superclass for all RESQML time intervals. The super class that contains all
types of intervals considered in geolog, including those based on chronostratigraphy, the
duration of geological events, and time intervals used in reservoir simulation (e.g., time
step).

Associations
Association Notes
From: FaultThrow.HasOccurredDuring
0..1 To: AbstractTimeInterval
From: GeologicTimeBasedTimeInterval.
To: AbstractTimeInterval
From: Indicates that the interpretation is valid only for a
AbstractFeatureInterpretation.HasOccurredDuring specific time interval. For example, a fault feature can
0..1 To: AbstractTimeInterval be normal for a certain period and inverse during
another period.
From: GeneticBoundaryBasedTimeInterval.
To: AbstractTimeInterval

Standard: v2.2 / Document: v1.0 / May 16, 2022 168


RESQML Technical Reference Guide v2. 2

6.6 BinaryContactInterpretationPart
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/16/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: The main class for data describing an opinion of the contact between two geologic
feature-interpretations.
• A contact interpretation between two surface geological boundaries is usually a line.
• A contact interpretation between two volumes (rock feature-interpret ation) is usually a
surface.

This class allows you to build a formal sentence—in the pattern of subject-verb-direct object—which is
used to describe the construction of a node, line, or surface contact. It is also possible to
attach a primary and a secondary qualifier to the subject and to the direct object.

For more information, see the RESQML Technical Usage Guide.

For example, one contact interpretation can be described by a sentence such as:
The interpreted fault named F1 interp on its hanging wall side splits the interpreted horizon named H1
Interp on both its sides.

Subject = F1 Interp, with qualifier "hanging wall side"


Verb = splits
Direct Object = H1 Interp, with qualifier "on both sides"

Attributes
Name Type Notes
Data-object reference (by UUID link) to a
geologic feature-interpretation, which is
DirectObject ContactElement
the direct object of the sentence that
defines how the contact was constructed.
Data-object reference (by UUID link) to a
geologic feature-interpretation, which is
Subject ContactElement
the subject of the sentence that defines
how the contact was constructed.
Verb ContactVerb

Associations
Association Notes
From: BinaryContactInterpretationPart.
To: AbstractContactInterpretationPart
From: BinaryContactInterpretationPart.
To: ContactVerb

Standard: v2.2 / Document: v1.0 / May 16, 2022 169


RESQML Technical Reference Guide v2. 2

6.7 BoundaryFeatureInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:11/1/2016 Status: Approved Author: Mathieu/ JFR
Notes: The main class for data describing an opinion of a surface feature between two volumes.

BUSINESS RULE: The data-object reference (of type "interprets") must reference only a boundary
feature.

Attributes
Name Type Notes
A value in years of the age offset between
the DateTime attribute value and the
DateTime of a GeologicalEvent
OlderPossibleAge long occurrence of generation. When it
represents a geological event that
happened in the past, this value must be
POSITIVE.
A value in years of the age offset between
the DateTime attribute value and the
DateTime of a GeologicalEvent
YoungerPossibleAge long occurrence of generation. When it
represents a geological event that
happened in the past, this value must be
POSITIVE.

Associations
Association Notes
From: Defines the BoundaryFeature interpretation acting as a
BoundaryFeatureInterpretation.AbsoluteAge chronoTop for the GeneticBoundaryBasedTimeInterval
0..1 To: GeologicTime
From: BoundaryFeatureInterpretation.
To: AbstractFeatureInterpretation
From: FaultInterpretation. To:
BoundaryFeatureInterpretation
From: GeobodyBoundaryInterpretation.
To: BoundaryFeatureInterpretation
From:
BoundaryFeatureInterpretationPlusItsRank.BoundaryF
eatureInterpretation
0..1 To: BoundaryFeatureInterpretation
From: HorizonInterpretation. To:
BoundaryFeatureInterpretation
From: Defines the BoundaryFeature interpretation acting as a
GeneticBoundaryBasedTimeInterval.ChronoBottom chronoBottom for the
To: BoundaryFeatureInterpretation GeneticBoundaryBasedTimeInterval.
From: StructuralOrganizationInterpretation.
To: BoundaryFeatureInterpretation
From: MarkerBoundary.Interpretation
0..1 To: BoundaryFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 170


RESQML Technical Reference Guide v2. 2

Association Notes
From:
GeneticBoundaryBasedTimeInterval.ChronoTop
To: BoundaryFeatureInterpretation
From: FluidBoundaryInterpretation. To:
BoundaryFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 171


RESQML Technical Reference Guide v2. 2

6.8 BoundaryFeatureInterpretationPlusItsRank
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: Element that lets you index and order feature interpretations which must be boundaries
(horizon, faults and frontiers) or boundary sets (fault network). For possible ordering
criteria, see OrderingCriteria.

BUSINESS RULE: Only BoundaryFeatureInterpretation and FeatureInterpretationS et


having faults as homogeneous type must be used to build a
StructuralOrganizationInterpretation.

Attributes
Name Type Notes
The first rank on which you find the
StratigraphicRank NonNegativeLong boundary or the interpretation set of
boundaries.

Associations
Association Notes
From:
BoundaryFeatureInterpretationPlusItsRank.FeatureInt
erpretationSet
0..1 To: DataobjectCollection
From:
BoundaryFeatureInterpretationPlusItsRank.BoundaryF
eatureInterpretation
0..1 To: BoundaryFeatureInterpretation
From:
StructuralOrganizationInterpretation.OrderedBoundary
FeatureInterpretation
0..* To: BoundaryFeatureInterpretationPlusItsRank

Standard: v2.2 / Document: v1.0 / May 16, 2022 172


RESQML Technical Reference Guide v2. 2

6.9 ContactElement
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/16/2012 Last modified:8/22/2018 Status: Approved Author: philippe
Notes: A reference to either a geologic feature interpretation or a frontier feature.

BUSINESS RULE: The content type of the corresponding data-object reference must be
a geological feature-interpretation or a frontier feature.

Attributes
Name Type Notes
Qualifier ContactSide
SecondaryQualifier ContactMode

Associations
Association Notes
From: ContactElement. To: ContactSide
From: ContactElement. To:
DataObjectReference
From: ContactElement. To:
ContactMode

Standard: v2.2 / Document: v1.0 / May 16, 2022 173


RESQML Technical Reference Guide v2. 2

6.10 ContactMode
Type: Enumeration Stereotype:
Detail: Created: 6/19/2014 Last modified:11/1/2016 Status: Proposed Author: deny
Notes: An optional second qualifier that may be used when describing binary contact
interpretation parts. (See also BinaryContactInterpretationPart and the RESQML
Technical Usage Guide.)

Attributes
Name Type Notes
conformable
extended
unconformable

Associations
Association Notes
From: ContactElement. To:
ContactMode

Standard: v2.2 / Document: v1.0 / May 16, 2022 174


RESQML Technical Reference Guide v2. 2

6.11 ContactSide
Type: Enumeration Stereotype:
Detail: Created: 4/10/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Enumeration that specifies the location of the contacts, chosen from the attributes listed
below. For example, if you specify contact between a horizon and a fault, you can specify
if the contact is on the foot wall side or the hanging wall side of the fault, and if the fault is
splitting both sides of a horizon or the older side only.

From Wikipedia: http://en.wikipedia.org/wiki/Foot_wall


CC-BY-SA-3.0-MIGRA TE D; GFDL-WITH-DISCLAIMERS
Released under the GNU Free Documentation License.

Attributes
Name Type Notes
footwall The footwall side of the fault. See picture.
hanging wall
For a vertical fault, specification of the
north
north side.
For a vertical fault, specification of the
south
south side.
For a vertical fault, specification of the east
east
side.
For a vertical fault, specification of the
west
west side.
Indicates that a fault splits a genetic
younger
boundary on its younger side.
Indicates that a fault splits a genetic
older
boundary on its older side.
Indicates that a fault splits both sides of a
both
genetic feature.

Associations
Association Notes
From: ContactElement. To: ContactSide

Standard: v2.2 / Document: v1.0 / May 16, 2022 175


RESQML Technical Reference Guide v2. 2

6.12 ContactVerb
Type: Enumeration Stereotype:
Detail: Created: 11/16/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Enumerations for the verbs that can be used to define the impact on the construction of
the model of the geological event that created the binary contact.

Attributes
Name Type Notes
Specifies that an interpretation
stops/interrupts another interpretation.
Used for tectonic boundary vs tectonic
stops
boundary but also genetic boundary vs
genetic boundary (erosion case), frontier
vs interpretation, etc.
Specifies that the fault has opened a pair
splits of fault lips in a horizon or separated a
geologic unit into two parts.
Specifies that a tectonic boundary
crosses interpretation crosses another tectonic
boundary interpretation.

Associations
Association Notes
From: BinaryContactInterpretationPart.
To: ContactVerb

Standard: v2.2 / Document: v1.0 / May 16, 2022 176


RESQML Technical Reference Guide v2. 2

6.13 DepositionalEnvironmentKind
Type: Enumeration Stereotype:
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Attributes
Name Type Notes
continental
paralic shallow marine
deep marine
carbonate continental
carbonate paralic shallow marine
carbonate deep marine

Associations
Association Notes
From: DepositionalEnvironmentKindExt.
To: DepositionalEnvironmentKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 177


RESQML Technical Reference Guide v2. 2

6.14 DepositionalEnvironmentKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: DepositionalEnvironmentKindExt.
To: DepositionalEnvironmentKind
From: DepositionalEnvironmentKindExt.
To: EnumExtensionPattern
From: GeologicUnitInterpretation. To:
DepositionalEnvironmentKindExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 178


RESQML Technical Reference Guide v2. 2

6.15 DepositionalFaciesKind
Type: Enumeration Stereotype:
Detail: Created: 8/15/2021 Last modified:8/30/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Attributes
Name Type Notes
carbonates
carbonates basinal
carbonates foreslope
carbonates foreslope pelagic
carbonates foreslope turbidite
carbonates highenergy
carbonates highenergy platform
carbonates highenergy platform interior
carbonates highenergy platform margin
carbonates highenergy ramp
carbonates highenergy ramp inner
carbonates highenergy ramp middle
carbonates highenergy ramp outer
carbonates highenergy shelf
carbonates highenergy shelf interior
carbonates highenergy shelf margin
carbonates highenergy slope
carbonates highenergy slope distal
carbonates highenergy slope lower
carbonates highenergy slope upper
carbonates lacustrine
carbonates lacustrine abiotic
carbonates lacustrine basinal
carbonates lacustrine organicbuildup
carbonates lacustrine ramp
carbonates lacustrine ramp inner
carbonates lacustrine ramp middle
carbonates lacustrine ramp outer
carbonates lacustrine shelf
carbonates lacustrine shelf interior
carbonates lacustrine shelf margin
carbonates lacustrine shelf slope

Standard: v2.2 / Document: v1.0 / May 16, 2022 179


RESQML Technical Reference Guide v2. 2

carbonates lacustrine shelf slope distal


carbonates lacustrine shelf slope lower
carbonates lacustrine shelf slope upper
carbonates lowenergy
carbonates lowenergy ramp
carbonates lowenergy sabkha
carbonates lowenergy shelf
carbonates lowenergy tidalflat
carbonates organicbuildup
carbonates organicbuildup bank
carbonates organicbuildup reef
carbonates organicbuildup reef mound
carbonates organicbuildup reef patch
carbonates organicbuildup reef pinnacle
carbonates subaerial
continental
continental alluvial
continental alluvial debrisflow
continental alluvial sheetflow
continental eolian
continental eolian erg
continental eolian mixedeolianfluvial
continental eolian mixedeoliansabkha
continental fluvial
continental fluvial alluvialplain
continental fluvial river
continental fluvial river anastomosing
continental fluvial river braided
continental fluvial river meandering
continental fluvial river straight
continental glacial
continental lacustrine
continental lacustrine barrier
continental lacustrine beach
continental lacustrine delta braided
continental lacustrine delta fan
continental lacustrine sublacustrinefan
deepmarine
deepmarine abysal
deepmarine channelcomplex

Standard: v2.2 / Document: v1.0 / May 16, 2022 180


RESQML Technical Reference Guide v2. 2

deepmarine channelcomplex confined


deepmarine channelcomplex confined
channelfill
deepmarine channelcomplex confined
levee
deepmarine channelcomplex distributary
deepmarine channelcomplex distributary
channelfill
deepmarine channelcomplex distributary
levee
deepmarine channelcomplex distributary
lobe
deepmarine channelcomplex
erosiveaggradational
deepmarine channelcomplex
erosiveaggradational channelfill
deepmarine channelcomplex
erosiveaggradational debrite
deepmarine channelcomplex
erosiveaggradational levee
deepmarine channelcomplex
erosiveaggradational overbankdeposit
deepmarine conouritedrift
deepmarine conouritedrift moatmound
deepmarine conouritedrift plastered
deepmarine conouritedrift sheetlike
deepmarine injectite
deepmarine intraslopebasin
deepmarine masstransportdeposit
deepmarine pelagic
deepmarine shelf
deepmarine shelf edge
deepmarine slope
deepmarine slope lower
deepmarine slope upper
deepmarine turbiditecontourite
deepmarine turbiditecontourite confined
deepmarine turbiditecontourite
distributary
marineshallow
marineshallow barrierisland
marineshallow barrierisland
waveinfluenc ed
marineshallow bay
marineshallow coast
marineshallow coast tidedominated

Standard: v2.2 / Document: v1.0 / May 16, 2022 181


RESQML Technical Reference Guide v2. 2

marineshallow coastalplain
marineshallow delta
marineshallow delta braided
marineshallow delta fan
marineshallow delta fluvialdominated
marineshallow delta fluvialinfluenced
marineshallow delta tidedominated
marineshallow delta tideinfluenced
marineshallow delta wavedominated
marineshallow delta waveinfluenced
marineshallow lagon
marineshallow lagon wavedominated
marineshallow shoreline
marineshallow shoreline estuary
marineshallow shoreline estuary
fluvialdominated
marineshallow shoreline estuary
fluvialinfluenc ed
marineshallow shoreline estuary
mixedinfluenced
marineshallow shoreline estuary
tidedominated
marineshallow shoreline estuary
tideinfluenced
marineshallow shoreline estuary
wavedominated
marineshallow shoreline estuary
waveinfluenc ed
marineshallow shoreline shoreface
marineshallow shoreline shoreface
foreshore
marineshallow shoreline shoreface lower
marineshallow shoreline shoreface
middle
marineshallow shoreline shoreface
offshore
marineshallow shoreline shoreface upper
marineshallow shoreline shoreline
fluvialdominated
marineshallow shoreline shoreline
fluvialinfluenc ed
marineshallow shoreline shoreline
mixedinfluenced
marineshallow shoreline shoreline
tidedominated
marineshallow shoreline shoreline
tideinfluenced
marineshallow shoreline shoreline
wavedominated

Standard: v2.2 / Document: v1.0 / May 16, 2022 182


RESQML Technical Reference Guide v2. 2

marineshallow shoreline shoreline


waveinfluenc ed
marineshallow strandplain
marineshallow tidalflat

Associations
Association Notes
From: DepositionalFaciesKindExt. To:
DepositionalFaciesKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 183


RESQML Technical Reference Guide v2. 2

6.16 DepositionalFaciesKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: DepositionalFaciesKindExt. To:
EnumExtensionPattern
From: DepositionalFaciesKindExt. To:
DepositionalFaciesKind
From: GeologicUnitInterpretation. To:
DepositionalFaciesKindExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 184


RESQML Technical Reference Guide v2. 2

6.17 DepositionMode
Type: Enumeration Stereotype:
Detail: Created: 7/25/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Specifies the position of the stratification of a stratigraphic unit with respect to its top and
bottom boundaries.

Attributes
Name Type Notes
proportional between top and bottom
parallel to bottom
parallel to top
parallel to another boundary

Standard: v2.2 / Document: v1.0 / May 16, 2022 185


RESQML Technical Reference Guide v2. 2

6.18 Domain
Type: Enumeration Stereotype:
Detail: Created: 10/24/2013 Last modified:11/1/2016 Status: Approved Author: L0352955
Notes: An enumeration that specifies in which domain the interpretation of an AbstractFeature
has been performed: depth, time, or mixed (= depth + time).

Attributes
Name Type Notes
Position defined by measurements in the
depth
depth domain.
Position based on geophysical
time
measurements in two-way time (TWT).
mixed depth + time

Standard: v2.2 / Document: v1.0 / May 16, 2022 186


RESQML Technical Reference Guide v2. 2

6.19 EarthModelInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: An earth model interpretation has the specific role of gathering at most:
• one StratigraphicOrganizationInterpret ation
• One or several StructuralOrganizationInterpretations
• One or several RockFluidOrganizationInterpretations

BUSINESS RULE: An earth model Interpretation interprets only a model feature.

Associations
Association Notes
From:
EarthModelInterpretation.StratigraphicOccurrences
0..* To: GeologicUnitOccurrenceInterpretation
From: EarthModelInterpretation. To:
AbstractFeatureInterpretation
From:
EarthModelInterpretation.StratigraphicColumn
0..1 To: StratigraphicColumn
From: EarthModelInterpretation.Structure
0..* To: StructuralOrganizationInterpretation
From: EarthModelInterpretation.Fluid
0..* To: RockFluidOrganizationInterpretation
From: A container to group together a set of
EarthModelInterpretation.WellboreInterpretationSet WellboreInterpretations. This container can be
0..* To: DataobjectCollection associated with an EarthModelInterpretation. This link
of the wellbore interpretation set to the earth model
interpretation helps the reader know which wellbore
interpretations are used to realize an earth model
interpretation

the DataobjectCollection must only contain


WellboreInterpretation i.e. its homogeneousdatatype
attribute must be resqml22.WellboreInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 187


RESQML Technical Reference Guide v2. 2

6.20 FaultInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A general term for designating a boundary feature intepretation that corresponds to a
discontinuity having a tectonic origin, identified at mapping or outcrop scale. Fault may
designate true faults but also thrust surfaces. A thrust surface is specified as a
FaultInterpretation whose FaultThrow kind is “thrust” and which has the attributes: is
Listric = 0, MaximumThrow = 0.

Attributes
Name Type Notes
If not set (absent), the
DipDirectionNorthReferenceKind NorthReferenceKind
NorthReferenceKind is Grid North.
Indicates if the normal fault is listric or not.
BUSINESS RULE: Must be present if the
IsListric boolean
fault is normal. Must not be present if the
fault is not normal.
IsSealed boolean
MaximumThrow LengthMeasure
For this element, “mean” means
MeanAzimuth PlaneAngleMeasure “representative”; it is not a mathematically
derived mean.
For this element, “mean” means
“representative”; it is not a mathematically
MeanDip PlaneAngleMeasure derived mean.
It is relative to horizontal however
horizontal is defined by the CRS.

Associations
Association Notes
From: FaultInterpretation. To:
BoundaryFeatureInterpretation
From: FaultInterpretation.ThrowInterpretation
0..* To: FaultThrow
From: ProxyConnector. To:
FaultInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 188


RESQML Technical Reference Guide v2. 2

6.21 FaultThrow
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/7/2013 Last modified:11/1/2016 Status: Proposed Author: philippe
Notes: Identifies the characteristic of the throw of a fault interpretation.

Attributes
Name Type Notes
Throw ThrowKindExt

Associations
Association Notes
From: FaultThrow.HasOccurredDuring
0..1 To: AbstractTimeInterval
From: FaultInterpretation.ThrowInterpretation
0..* To: FaultThrow

Standard: v2.2 / Document: v1.0 / May 16, 2022 189


RESQML Technical Reference Guide v2. 2

6.22 FluidBoundaryInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 1/8/2016 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A boundary (usually a plane or a set of planes) separating two fluid phases, such as a
gas-oil contact (GOC), a water-oil contact (WOC), a gas-oil contact (GOC), or others. For
types, see FluidContact.

Attributes
Name Type Notes
FluidContact FluidContact The kind of contact of this boundary.

Associations
Association Notes
From: FluidBoundaryInterpretation. To:
BoundaryFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 190


RESQML Technical Reference Guide v2. 2

6.23 FluidContact
Type: Enumeration Stereotype:
Detail: Created: 8/22/2012 Last modified:7/6/2021 Status: Approved Author: philippe
Notes: Enumerated values used to indicate a specific type of fluid boundary interpretation.

Attributes
Name Type Notes
A surface defined by vanishing capillary
free water contact External Reference pressure between the water and
hydrocarbon phases.
A surface defined by vanishing capillary
gas oil contact External Reference pressure between the gas and oil
hydrocarbon phases.
A surface defined by vanishing capillary
gas water contact External Reference pressure between the water and gas
hydrocarbon phases.
Identifies a break in the hydrostatic
seal External Reference
column.
A surface defined by vanishing capillary
water oil contact External Reference pressure between the water and oil
hydrocarbon phases.

Associations
Association Notes
From: MarkerBoundary. To:
FluidContact

Standard: v2.2 / Document: v1.0 / May 16, 2022 191


RESQML Technical Reference Guide v2. 2

6.24 GenericFeatureInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/21/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: An interpretation of a feature that is not specialized. For example, use it when the
specialized type of the associated feature is not known.
For example, to set up a StructuralOrganizationInterpretation you must reference the interpretations of
each feature you want to include. These features must include FrontierFeatures which
have no interpretations because they are technical features. For consistency of design of
the StructuralOrganizationInterpretation, create a GenericFeatureInterpretation for each
FrontierFeature.

Associations
Association Notes
From: GenericFeatureInterpretation. To:
AbstractFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 192


RESQML Technical Reference Guide v2. 2

6.25 GeneticBoundaryBasedTimeInterval
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Geological time during which a geological event (e.g., deposition, erosion, fracturation,
faulting, intrusion) occurred.

Associations
Association Notes
From: Defines the BoundaryFeature interpretation acting as a
GeneticBoundaryBasedTimeInterval.ChronoBottom chronoBottom for the
To: BoundaryFeatureInterpretation GeneticBoundaryBasedTimeInterval.
From:
GeneticBoundaryBasedTimeInterval.ChronoTop
To: BoundaryFeatureInterpretation
From: GeneticBoundaryBasedTimeInterval.
To: AbstractTimeInterval

Standard: v2.2 / Document: v1.0 / May 16, 2022 193


RESQML Technical Reference Guide v2. 2

6.26 GeobodyBoundaryInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/3/2014 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Contains the data describing an opinion about the characterization of a geobody
BoundaryFeature, and it includes the attribute boundary relation.

Attributes
Name Type Notes
Characterizes the stratigraphic
BoundaryRelation BoundaryRelation relationships of a horizon with the
stratigraphic units that its bounds.
Optional Boolean flag to indicate that the
IsConformableAbove boolean geobody boundary interpretation is
conformable above.
Optional Boolean flag to indicate that the
IsConformableBelow boolean geobody boundary interpretation is
conformable below.

Associations
Association Notes
From: GeobodyBoundaryInterpretation.
To: BoundaryFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 194


RESQML Technical Reference Guide v2. 2

6.27 GeobodyInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A volume of rock that is identified based on some specific attribute, like its mineral
content or other physical characteristic. Unlike stratigraphic or phase units, there is no
associated time or fluid content semantic.

Associations
Association Notes
From: GeobodyInterpretation. To:
GeologicUnitInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 195


RESQML Technical Reference Guide v2. 2

6.28 GeologicTimeBasedTimeInterval
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/10/2014 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: A time interval that is bounded by two geologic times.
Can correspond to a TimeStep in a TimeSeries, such as the International Chronostratigraphic Scale or a
regional chronostratigraphic scale.

Associations
Association Notes
From: GeologicTimeBasedTimeInterval.Start
To: GeologicTime
From: GeologicTimeBasedTimeInterval.End
To: GeologicTime
From: GeologicTimeBasedTimeInterval.
To: AbstractTimeInterval

Standard: v2.2 / Document: v1.0 / May 16, 2022 196


RESQML Technical Reference Guide v2. 2

6.29 GeologicUnitInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:11/1/2016 Status: Approved Author: Mathieu /JFR
Notes: The main class for data describing an opinion of an originally continuous rock volume
individualized in view of some characteristic property (e.g., physical, chemical, temporal)
defined by GeologicUnitComposition and/or GeologicUnitMaterialImplac ement, which can
have a 3D defined shape. BUSINESS RULE: The data object reference (of type
"interprets") must reference only a rock volume feature.
In an earth model, a geological unit interrupted by faults may consist of several disconnected rock
volumes.

Attributes
Name Type Notes
DepositionalEnvironmentKi
DepositionalEnvironment
ndExt
DepositionalFacies DepositionalFaciesKindExt
GeologicUnit3dShape Shape3dExt 3D shape of the geologic unit.
GeologicUnitComposition LithologyKindExt
Attribute specifying whether the
GeologicUnitMaterialEmpla
GeologicUnitMaterialEmplacement GeologicalUnitIntepretation is intrusive or
cement
not.

Associations
Association Notes
From: GeologicUnitInterpretation. To:
AbstractFeatureInterpretation
From: GeologicUnitInterpretation. To:
DepositionalEnvironmentKindExt
From: GeologicUnitInterpretation. To:
DepositionalFaciesKindExt
From: GeobodyInterpretation. To:
GeologicUnitInterpretation
From: RockFluidUnitInterpretation. To:
GeologicUnitInterpretation
From: VolumeRegion.Represents
To: GeologicUnitInterpretation
From: ReservoirCompartmentInterpretation.
To: GeologicUnitInterpretation
From: MarkerInterval.Interpretation
0..* To: GeologicUnitInterpretation
From: StratigraphicUnitInterpretation.
To: GeologicUnitInterpretation
From:
GeologicUnitOccurrenceInterpretation.GeologicUnit
0..* To: GeologicUnitInterpretation
From:
ReservoirCompartmentUnitInterpretation. 0..1
To: GeologicUnitInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 197


RESQML Technical Reference Guide v2. 2

6.30 GeologicUnitMaterialEmplacement
Type: Enumeration Stereotype:
Detail: Created: 7/25/2014 Last modified:11/9/2016 Status: Approved Author: philippe
Notes: The enumerated attributes of a horizon.

Attributes
Name Type Notes
intrusive
non-intrusive

Standard: v2.2 / Document: v1.0 / May 16, 2022 198


RESQML Technical Reference Guide v2. 2

6.31 GeologicUnitOccurrenceInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:7/19/2021 Status: Approved Author: Mathieu
Notes: A local Interpretation—it could be along a well, on a 2D map, or on a 2D section or on a
part of the global volume of an earth model—of a succession of rock feature elements.
The stratigraphic column rank interpretation composing a stratigraphic occurrence can be ordered by the
criteria listed in OrderingCriteria.
Note: When the chosen ordering criterion is not age but measured depth along a well trajectory, the
semantics of the name of this class could be inconsistent semantics. In this case:
• When faults are present, the observed succession may show repetition of a
stratigraphic succession composed of a series of units each younger than the one
below it.
• This succession should not be called a stratigraphic occurrence because it is not
stratigraphic (because the adjective ‘stratigraphic’ applies to a succession of units
ordered according to their relative ages).
A more general term for designating a succession of geological units encountered in drilling would be
“Geologic Occurrence”. So we may consider that the term “stratigraphic cccurrence
interpretation” should be understood as “geologic occurrence interpretation”.

Associations
Association Notes
From: GeologicUnitOccurrenceInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation
From:
GeologicUnitOccurrenceInterpretation.IsOccurrenceOf
0..1 To: StratigraphicColumnRankInterpretation
From:
GeologicUnitOccurrenceInterpretation.GeologicUnit
0..* To: GeologicUnitInterpretation
From:
EarthModelInterpretation.StratigraphicOccurrences
0..* To: GeologicUnitOccurrenceInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 199


RESQML Technical Reference Guide v2. 2

6.32 HorizonInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/10/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: An interpretation of a horizon, which optionally provides stratigraphic information on
BoundaryRelation, HorizonStratigraphicRole, SequenceStratigraphysurface
.

Attributes
Name Type Notes
Optional Boolean flag to indicate that the
IsConformableAbove boolean horizon interpretation is conformable
above.
Optional Boolean flag to indicate that the
IsConformableBelow boolean horizon interpretation is conformable
below.
SequenceStratigraphySurf
SequenceStratigraphySurface
aceKindExt
StratigraphicRole StratigraphicRole

Associations
Association Notes
From: HorizonInterpretation. To:
BoundaryFeatureInterpretation
From: HorizonInterpretation. To:
SequenceStratigraphySurfaceKindExt
From: HorizonInterpretation. To:
StratigraphicRole

Standard: v2.2 / Document: v1.0 / May 16, 2022 200


RESQML Technical Reference Guide v2. 2

6.33 MultipleContactInterpretationPart
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 5/16/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Describes multiple interface contacts of geologic feature-interpretations (compared to a
binary contact). A composition of several contact interpretations.

Attributes
Name Type Notes
Indicates a list of binary contacts (by their
With NonNegativeLong UUIDs) that participate in this multiple-part
contact.

Associations
Association Notes
From: MultipleContactInterpretationPart.
To: AbstractContactInterpretationPart

Standard: v2.2 / Document: v1.0 / May 16, 2022 201


RESQML Technical Reference Guide v2. 2

6.34 OrderingCriteria
Type: Enumeration Stereotype:
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Enumeration used to specify the order of an abstract stratigraphic organization or a
structural organization interpretation.

Attributes
Name Type Notes
From youngest to oldest period (increasing
age
age).
apparent depth From surface to subsurface.

Standard: v2.2 / Document: v1.0 / May 16, 2022 202


RESQML Technical Reference Guide v2. 2

6.35 Phase
Type: Enumeration Stereotype:
Detail: Created: 8/22/2012 Last modified:7/6/2021 Status: Approved Author: philippe
Notes: The enumeration of the possible rock fluid unit phases in a hydrostatic column.
The seal is considered here as a part (the coverage phase) of a hydrostatic column.

Attributes
Name Type Notes
Volume of the hydrostatic column for
which only the aqueous phase is mobile.
aquifer External Reference
Typically below the Pc (hydrocarbon-
water) = 0 free fluid surface.
Volume of the hydrostatic column for
which only the gaseous phase is mobile.
gas cap External Reference
Typically above the Pc (gas-oil) = 0 free
fluid surface.
Volume of the hydrostatic column for
which only the oleic and aqueous phases
oil column External Reference may be mobile. Typically below the gas-oil
Pc = 0 free fluid surface. Pc (gas-oil) = 0
free fluid surface.
Impermeable volume that provides the
seal External Reference
seal for a hydrostatic fluid column.

Standard: v2.2 / Document: v1.0 / May 16, 2022 203


RESQML Technical Reference Guide v2. 2

6.36 ReservoirCompartmentInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A portion of a reservoir rock which is differentiated laterally from other portions of the
same reservoir stratum. This differentiation could be due to being in a different fault block
or a different channel or other stratigraphic or structural aspect.

A reservoir compartment may or may not be in contact with other reservoir compartments.

Associations
Association Notes
From: ReservoirCompartmentInterpretation.
To: GeologicUnitInterpretation
From:
VoidageGroupInterpretation.Compartments
0..* To: ReservoirCompartmentInterpretation
From:
ReservoirCompartmentUnitInterpretation.ReservoirCo
mpartment
1 To: ReservoirCompartmentInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 204


RESQML Technical Reference Guide v2. 2

6.37 ReservoirCompartmentUnitInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A geologic unit or formation located within a reservoir compartment.

Associations
Association Notes
From:
ReservoirCompartmentUnitInterpretation.FluidUnits
0..3 To: RockFluidUnitInterpretation
From:
ReservoirCompartmentUnitInterpretation.ReservoirCo
mpartment
1 To: ReservoirCompartmentInterpretation
From:
ReservoirCompartmentUnitInterpretation. 0..1
To: GeologicUnitInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 205


RESQML Technical Reference Guide v2. 2

6.38 RockFluidOrganizationInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: This class describes the organization of geological reservoir, i.e., of an interconnected
network of porous and permeable rock units, containing an accumulation of economic
fluids, such as oil and gas.
A reservoir is normally enveloped by rock and fluid barriers and contains a single natural pressure
system.

Associations
Association Notes
From:
RockFluidOrganizationInterpretation.RockFluidUnit
0..* To: RockFluidUnitInterpretation
From: RockFluidOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From:
CellFluidPhaseUnits.RockFluidOrganizationInterpretatio
n
To: RockFluidOrganizationInterpretation
From: VoidageGroupInterpretation.Fluids
0..1 To: RockFluidOrganizationInterpretation
From: EarthModelInterpretation.Fluid
0..* To: RockFluidOrganizationInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 206


RESQML Technical Reference Guide v2. 2

6.39 RockFluidUnitInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/1/2014 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A type of rock fluid feature-interpretation, this class identifies a rock fluid unit
interpretation by its phase.

Attributes
Name Type Notes
Phase Phase

Associations
Association Notes
From: RockFluidUnitInterpretation. To:
GeologicUnitInterpretation
From:
ReservoirCompartmentUnitInterpretation.FluidUnits
0..3 To: RockFluidUnitInterpretation
From:
RockFluidOrganizationInterpretation.RockFluidUnit
0..* To: RockFluidUnitInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 207


RESQML Technical Reference Guide v2. 2

6.40 SequenceStratigraphySurfaceKind
Type: Enumeration Stereotype:
Detail: Created: 5/10/2012 Last modified:10/27/2021 Status: Approved Author: philippe
Notes: The enumerated attributes of a horizon.

Attributes
Name Type Notes
flooding
maximum flooding
regressive
maximum regressive
transgressive
maximum transgressive
abandonment
correlative conformity
ravinement
sequence boundary

Associations
Association Notes
From: SequenceStratigraphySurfaceKindExt.
To: SequenceStratigraphySurfaceKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 208


RESQML Technical Reference Guide v2. 2

6.41 SequenceStratigraphySurfaceKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 8/30/2021 Last modified:11/1/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: SequenceStratigraphySurfaceKindExt.
To: SequenceStratigraphySurfaceKind
From: SequenceStratigraphySurfaceKindExt.
To: EnumExtensionPattern
From: HorizonInterpretation. To:
SequenceStratigraphySurfaceKindExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 209


RESQML Technical Reference Guide v2. 2

6.42 Shape3d
Type: Enumeration Stereotype:
Detail: Created: 7/25/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Enumeration characterizing the 3D shape of a geological unit.

Attributes
Name Type Notes
sheet
dyke
dome
mushroom
channel
delta
dune
fan
reef
wedge

Associations
Association Notes
From: Shape3dExt. To: Shape3d

Standard: v2.2 / Document: v1.0 / May 16, 2022 210


RESQML Technical Reference Guide v2. 2

6.43 Shape3dExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 1/21/2016 Last modified:12/12/2016 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: Shape3dExt. To: Shape3d
From: Shape3dExt. To:
EnumExtensionPattern

Standard: v2.2 / Document: v1.0 / May 16, 2022 211


RESQML Technical Reference Guide v2. 2

6.44 StratigraphicColumn
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/29/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A global interpretation of the stratigraphy, which can be made up of several ranks of
stratigraphic unit interpretations.

BUSINESS RULE: All stratigraphic column rank interpretations that make up a stratigraphic column must
be ordered by age.

Associations
Association Notes
From: StratigraphicColumn.Ranks
1..* To: StratigraphicColumnRankInterpretation
From: StratigraphicColumn. To:
AbstractObject
From:
EarthModelInterpretation.StratigraphicColumn
0..1 To: StratigraphicColumn

Standard: v2.2 / Document: v1.0 / May 16, 2022 212


RESQML Technical Reference Guide v2. 2

6.45 StratigraphicColumnRankInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/28/2013 Last modified:11/1/2016 Status: Approved Author: Mathieu
Notes: A global hierarchy containing an ordered list of stratigraphic unit interpretations.

Attributes
Name Type Notes
RankInStratigraphicColumn NonNegativeLong The rank in the stratigraphic column.

Associations
Association Notes
From: StratigraphicColumnRankInterpretation.
To:
AbstractGeologicUnitOrganizationInterpretation
From:
StratigraphicColumnRankInterpretation.StratigraphicU
nits
1..* To: StratigraphicUnitInterpretation
From: StratigraphicColumn.Ranks
1..* To: StratigraphicColumnRankInterpretation
From:
GeologicUnitOccurrenceInterpretation.IsOccurrenceOf
0..1 To: StratigraphicColumnRankInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 213


RESQML Technical Reference Guide v2. 2

6.46 StratigraphicRole
Type: Enumeration Stereotype:
Detail: Created: 1/26/2015 Last modified:12/7/2021 Status: Approved Author: mathieu
Notes: Interpretation of the stratigraphic role of a picked horizon (chrono, litho or bio).
Here the word “role” is a business term which doesn’t correspond to an entity dependent from an external
property but simply characterizes a kind of horizon.

Attributes
Name Type Notes
chronostratigraphic
lithostratigraphic
biostratigraphic
magnetostratigraphic
chemostratigraphic
seismicstratigraphic

Associations
Association Notes
From: HorizonInterpretation. To:
StratigraphicRole
From: StratigraphicUnitInterpretation.
To: StratigraphicRole

Standard: v2.2 / Document: v1.0 / May 16, 2022 214


RESQML Technical Reference Guide v2. 2

6.47 StratigraphicUnitInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/5/2012 Last modified:12/15/2016 Status: Proposed Author: deny
Notes: A volume of rock of identifiable origin and relative age range that is defined by the
distinctive and dominant, easily mapped and recognizable features that characterize it
(petrographic, lithologic, paleontologic, paleomagnetic or chemical features).
Some stratigraphic units (chronostratigraphic units) have a GeneticBoundaryBasedTimeInterval (between
its ChronoTop and ChronoBottom) defined by a BoundaryFeatureInterpretation.
A stratigraphic unit has no direct link to its physical top and bottom limits. These physical limits are only
defined as contacts between StratigraphicUnitInterpret ations defined within a
StratigraphicOrganizationInterpret ation.

Attributes
Name Type Notes
BUSINESS RULE: The deposition mode
for a geological unit MUST be consistent
DepositionMode DepositionMode with the boundary relations of a genetic
boundary. If it is not, then the boundary
relation declaration is retained.
MaxThickness LengthMeasure
MinThickness LengthMeasure
StratigraphicRole StratigraphicRole

Associations
Association Notes
From: StratigraphicUnitInterpretation.
To: GeologicUnitInterpretation
From: StratigraphicUnitInterpretation.
To: StratigraphicRole
From:
StratigraphicColumnRankInterpretation.StratigraphicU
nits
1..* To: StratigraphicUnitInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 215


RESQML Technical Reference Guide v2. 2

6.48 StructuralOrganizationInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 4/4/2013 Last modified:9/28/2021 Status: Approved Author: Mathieu
Notes: One of the main types of RESQML organizations, this class gathers boundary
interpretations (e.g., horizons, faults and fault networks) plus frontier features and their
relationships (contacts interpretations), which when taken together define the structure of
a part of the earth.
IMPLEMENTATION RULE: Two use cases are presented:
• If the relative age or apparent depth between faults and horizons is unknown, the
writer must provide all individual faults within the UnorderedFault Collection
FeatureInterpretationSet.
• Else, the writer must provide individual faults and fault collections within the
OrderedBoundaryFeatureInterpretation list.
BUSINESS RULE: Two use cases are processed:
1. If relative age or apparent depth between faults and horizons are unknown, the writer
must provides all individual faults within the UnorderedFaultCollection
FeatureInterpretationSet.
Else, individual faults and fault collections are provided within the OrderedBoundaryFeatureInterpretation
list.

Attributes
Name Type Notes
AscendingOrderingCriteria OrderingCriteria
BUSINESS RULE: It either points to a
CulturalFeature whose Kind is model
BottomFrontier DataObjectReference frontier or to a
BoundaryFeatureInterpretation if the
frontier is actually a geologic surface
BUSINESS RULE: It either points to a
CulturalFeature whose Kind is model
Sides DataObjectReference frontier or to a
BoundaryFeatureInterpretation if the
frontier is actually a geologic surface
BUSINESS RULE: It either points to a
CulturalFeature whose Kind is model
TopFrontier DataObjectReference frontier or to a
BoundaryFeatureInterpretation if the
frontier is actually a geologic surface

Associations
Association Notes
From: StructuralOrganizationInterpretation.
To: AbstractOrganizationInterpretation
From:
StructuralOrganizationInterpretation.OrderedBoundary
FeatureInterpretation
0..* To: BoundaryFeatureInterpretationPlusItsRank
From: StructuralOrganizationInterpretation.
To: BoundaryFeatureInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 216


RESQML Technical Reference Guide v2. 2

Association Notes
From: EarthModelInterpretation.Structure
0..* To: StructuralOrganizationInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 217


RESQML Technical Reference Guide v2. 2

6.49 ThrowKind
Type: Enumeration Stereotype:
Detail: Created: 4/5/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Enumeration that characterizes the type of discontinuity corresponding to a fault.

Attributes
Name Type Notes
reverse
strike-slip
normal
thrust
scissor
Used when a throw has different behaviors
variable
during its lifetime.

Associations
Association Notes
From: ThrowKindExt. To: ThrowKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 218


RESQML Technical Reference Guide v2. 2

6.50 ThrowKindExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 1/21/2016 Last modified:12/12/2016 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: ThrowKindExt. To:
EnumExtensionPattern
From: ThrowKindExt. To: ThrowKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 219


RESQML Technical Reference Guide v2. 2

6.51 VoidageGroupInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/15/2021 Last modified:8/15/2021 Status: Proposed Author: Jay Hollingsworth
Notes: A group of ReservoirSegments which are hydraulically connected and are generally
developed as a single reservoir.

Membership in this organization can change over time (geologic and over the life of a field or
interpretation activity) and is an interpretation.

Associations
Association Notes
From:
VoidageGroupInterpretation.Compartments
0..* To: ReservoirCompartmentInterpretation
From: VoidageGroupInterpretation. To:
AbstractOrganizationInterpretation
From: VoidageGroupInterpretation.Stratigraphy
0..1 To:
AbstractGeologicUnitOrganizationInterpretation
From: VoidageGroupInterpretation.Fluids
0..1 To: RockFluidOrganizationInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 220


RESQML Technical Reference Guide v2. 2

7 Properties
Package: xsd_schemas

Notes: This package contains classes used to define and exchange property data in RESQML.
Individual property values are attached to a single type of element in the representation,
either its topological elements, such as nodes or cells, or larger elements such as the
entire representation or large parts of it, through patches and sub-representations.
Each property value is also associated with a single property type, which provides global
semantics about the meaning of these values. Property values can also be associated
with facets, which provide additional context for the values.
It is very common in subsurface/earth modeling workflows to follow the evolution of some
property values through time or to consider them together as a group of property values
attached to the same or different representations and property types. To capture this
information, RESQML provides the notion of time series and a property group.
When spatial locations (geometry) need to be stored for specific elements in a
representation, then property points are used.

TypeEnum
AbstractObject
«enumeration»
«XSDcomplexType,XSDtopLevelElement»
CommonTypes::Facet
Representations::AbstractRepresentation
AbstractObject I
«XSDcomplexType» «XSDelement» J
«XSDcomplexType,XSDtopLevelElement» CommonTypes::TimeOrIntervalSeries + RealizationIndex: PositiveLong [0..1]
CommonTypes::TimeSeries +TimeSeries K
+ RepresentedObject: DataObjectReference [0..1] X
«XSDelement» AbstractCompoundCrs
«XSDelement» + UseInterval: boolean +SupportingRepresentation Y
+ Time: GeologicTime [1..-1] {ordered} «XSDcomplexType,XSDtopLevelElem... Z
+ TimeStep: AbstractIntegerArray [0..1] CRS::LocalEngineeringCompoundCrs I+
+TimeOrIntervalSeries 0..1
J+
«XSDelement»
K+
+ OriginVerticalCoordinate: double
X+
AbstractObject +LocalCrs
Y+
«XSDcomplexType,XSDtopLevelElement» Z+
TypeEnum 0..1 I-
AbstractProperty
«enumeration» J-
CommonEnumerations: «XSDelement» K-
:IndexableElement + IndexableElement: IndexableElement X-
+ LabelPerComponent: String64 [0..-1] Y-
cells
+ PropertyKind: DataObjectReference Z-
intervals from datum
+ RealizationIndices: AbstractIntegerArray [0..1] net
column edges
+ Time: GeologicTime [0..1] gross
columns
+ ValueCountPerIndexableElement: PositiveLong [1..-1] plus
contacts
minus
coordinate lines Values Per patch are structured that way in HDF (top is slowest dimension, bottom is fastest average
edges dimension) : maximum
edges per column [RealizationCount] : don't prov ide this dimension if not needed (because it is an optionnal attribute in XSD) minimum
enumerated elements
[TimeCount] : don't prov ide this dimension if not needed (because it is an optionnal attribute in XSD) maximum threshold
faces
[IndexableElementCount] prov ide this dimension ev en if equal to 1 (because it is not an optionnal attribute in XSD) minimum threshold
faces per cell
«XSDcomplexType,XSDtopLevelElement» [ValueCountPerIndexableElement] don't prov ide this dimension if not needed (because it is an optionnal attribute in XSD) surface condition
interval edges
PointsProperty reservoir condition
intervals
oil
I0 Example for properties on 3D grid cells
«XSDelement» water
I0 edges [RealizationCount] : don't prov ide this dimension if not needed
+ PointsForPatch: AbstractPoint3dArray [1..*] gas
J0 [TimeCount] : don't prov ide this dimension if not needed condensate
J0 edges [nk] prov ide this dimension ev en if equal to 1
AbstractValueArray cumulative
layers [nj] prov ide this dimension ev en if equal to 1 fracture
lines «XSDcomplexType» [ni] prov ide this dimension ev en if equal to 1 matrix
nodes BaseTypes::AbstractBooleanArray
nodes per cell [ValueCountPerIndexableElement] don't prov ide this dimension if not needed
nodes per edge «XSDelement»
nodes per face + Statistics: BooleanArrayStatistics [0..-1]
patches
EnumExtensionPattern
pillars
regions «XSDcomplexType,XSDtopLevelElement» «XSDunion»
representation AbstractValuesProperty CommonTypes::
subnodes «XSDcomplexT... FacetExt
«XSDelement» +Facet
CommonTypes::
triangles + ValuesForPatch: AbstractValueArray [1..*]
«XSDcomplexType» 0..* PropertyKindFacet
BooleanArrayFromDiscretePropertyArray
«XSDelement»
«XSDelement» + Facet: FacetExt
+ Value: long + Kind: FacetKind
TypeEnum
«enumeration»
CommonTypes::
FacetKind
+Property
conditions
AbstractObject «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLeve... «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSD... side
«XSDcomplexType,XSDtopLevelElement» +CategoryLookup
DiscreteProperty BooleanProperty ContinuousProperty CommentProperty direction
ColumnBasedTable::ColumnBasedTable netgross
0..1 «XSDelement» «XSDelement» qualifier
+ CustomUnitDictionary: DataObjectReference [0..1] + Language: String64 [0..1] statistics
+ Uom: UnitOfMeasureExt what

Standard: v2.2 / Document: v1.0 / May 16, 2022 221


RESQML Technical Reference Guide v2. 2

7.1 AbstractProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/5/2012 Last modified:1/1/2017 Status: Approved Author: deny
Notes: Base class for storing all property values on representations, except current geometry
location.
Values attached to a given element can be either a scalar or a vector. The size of the vector is constant
on all elements, and it is assumed that all elements of the vector have identical property
types and share the same unit of measure.

Attributes
Name Type Notes
IndexableElement IndexableElement
Labels for each component of a vector or
tensor property in a linearized way.
LabelPerComponent String64 REMINDER: First (left) given dimension is
slowest and last (right) given dimension is
fastest.
Pointer to a PropertyKind. The Energistics
dictionary can be found at
PropertyKind DataObjectReference http://w3.energistics.org/energyML/data/co
mmon/v2.1/ancillary/PropertyKindDictionar
y_v2.1.0.xml.
Provide the list of indices corresponding to
realizations number. For example, if a user
wants to send the realization
corresponding to p10, p20, ... he would
RealizationIndices AbstractIntegerArray write the array 10, 20, ...
If not provided, then the realization count
(which could be 1) does not introduce a
dimension to the multi-dimensional array
storage.
Time GeologicTime
The count of value in one dimension for
each indexable element. It is ordered as
the values are ordered in the data set.
ValueCountPerIndex ableElement PositiveLong REMINDER: First (left) given dimension is
slowest and last (right) given dimension is
fastest. The top XML element is slower
than the bottom.

Associations
Association Notes
From:
AbstractProperty.SupportingRepresentation
To: AbstractRepresentation
From: AbstractProperty.LocalCrs
0..1 To: LocalEngineeringCompoundCrs
From: AbstractProperty. To:
IndexableElement

Standard: v2.2 / Document: v1.0 / May 16, 2022 222


RESQML Technical Reference Guide v2. 2

Association Notes
From: AbstractProperty. To:
AbstractObject
From: AbstractProperty.TimeOrIntervalSeries
0..1 To: TimeOrIntervalSeries
From: PointsProperty. To: AbstractProperty
From: AbstractValuesProperty. To:
AbstractProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 223


RESQML Technical Reference Guide v2. 2

7.2 AbstractValuesProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 10/31/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Base class for property values. Each derived element provides specific property values,
including point property in support of geometries.

Attributes
Name Type Notes
If the rep has no explicit patch, use only 1
ValuesForPatch. If the rep has > 1 explicit
patch, use as many ValuesforPatch as
ValuesForPatch AbstractValueArray patches of the rep. The ordering of
ValuesForPatch matches the ordering of
the patches in the xml document of the
representation.

Associations
Association Notes
From: AbstractValuesProperty.Facet BUSINESS RULE :
0..* To: PropertyKindFacet Don't use several facets of the same kind for the same
property.
From: AbstractValuesProperty. To:
AbstractProperty
From: DiscreteProperty. To:
AbstractValuesProperty
From: CommentProperty. To:
AbstractValuesProperty
From: BooleanProperty. To:
AbstractValuesProperty
From: ContinuousProperty. To:
AbstractValuesProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 224


RESQML Technical Reference Guide v2. 2

7.3 BooleanArrayFromDiscretePropertyArray
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/29/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: An array of Boolean values that is explicitly defined by indicating which indices in the
array are either true or false. This class is used to represent very sparse true or false
data, based on a discrete property.

Attributes
Name Type Notes
Integer to match for the value to be
Value long
considered true

Associations
Association Notes
From:
BooleanArrayFromDiscretePropertyArray.Property
To: DiscreteProperty
From:
BooleanArrayFromDiscretePropertyArray. To:
AbstractBooleanArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 225


RESQML Technical Reference Guide v2. 2

7.4 BooleanProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 1/26/2016 Last modified:11/1/2016 Status: Proposed Author: Philippe Verney
Notes: Information specific to one Boolean property.
Used to capture a choice between 2 and only 2 possible values/states for each indexable element of a
data object, for example, identifying active cells of a grid..

Associations
Association Notes
From: BooleanProperty. To:
AbstractValuesProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 226


RESQML Technical Reference Guide v2. 2

7.5 CommentProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 9/19/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Information specific to one comment property.
Used to capture comments or annotations associated with a given element type in a data-object, for
example, associating comments on the specific location of a well path.

Attributes
Name Type Notes
Identify the language (e.g., US English or
Language String64 French) of the string. It is recommended
that language names conform to ISO 639.

Associations
Association Notes
From: CommentProperty. To:
AbstractValuesProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 227


RESQML Technical Reference Guide v2. 2

7.6 ContinuousProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/6/2012 Last modified:12/8/2021 Status: Approved Author: deny
Notes: Most common type of property used for storing rock or fluid attributes; all are represented
as doubles.
Statistics about values such as maximum and minimum can be found in the statistics of each
ValueForPatch.
BUSINESS RULE: It also contains a unit of measure, which can be different from the unit of measure of
its property type, but it must be convertible into this unit.

Attributes
Name Type Notes
CustomUnitDictionary DataObjectReference
Uom UnitOfMeasureExt Unit of measure for the property.

Associations
Association Notes
From: ContinuousProperty. To:
AbstractValuesProperty
From:
SingleGridPropertyParameter.GasSaturation
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.WaterSaturation
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.PorosityMultiplier
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.PoreVolumeMultiplier
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.OilSaturation
0..1 To: ContinuousProperty
From: SingleGridPropertyParameter.Pressure
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.TransmissibilityMultiplier
0..1 To: ContinuousProperty
From: SingleGridPropertyParameter.CellActivity
0..1 To: ContinuousProperty
From: MultipliedPerm.Multiplier
0..1 To: ContinuousProperty
From: MultipliedPerm.Property
To: ContinuousProperty
From:
SingleGridPropertyParameter.NetToGross
0..1 To: ContinuousProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 228


RESQML Technical Reference Guide v2. 2

Association Notes
From:
SingleGridPropertyParameter.PoreVolume
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.MinimumPoreVolume
0..1 To: ContinuousProperty
From:
SingleGridPropertyParameter.NetToGrossMultiplier
0..1 To: ContinuousProperty
From: SingleGridPropertyParameter.Porosity
0..1 To: ContinuousProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 229


RESQML Technical Reference Guide v2. 2

7.7 DiscreteProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/6/2012 Last modified:12/8/2021 Status: Approved Author: deny
Notes: Contains discrete integer values; typically used to store any type of index.
Statistics about values such as maximum and minimum can be found in the statistics of each
ValueForPatch.

Associations
Association Notes
From: DiscreteProperty. To:
AbstractValuesProperty
From: DiscreteProperty.CategoryLookup
0..1 To: ColumnBasedTable
From:
BooleanArrayFromDiscretePropertyArray.Property
To: DiscreteProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 230


RESQML Technical Reference Guide v2. 2

7.8 PointsProperty
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/13/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Represents the geometric information that should *not* be used as representation
geometry, but should be used in another context where the location or geometrical
vectorial distances are needed.

Attributes
Name Type Notes
Geometric points (or vectors) to be
PointsForPatch AbstractPoint3dArray attached to the specified indexable
elements.

Associations
Association Notes
From: PointsProperty. To: AbstractProperty

Standard: v2.2 / Document: v1.0 / May 16, 2022 231


RESQML Technical Reference Guide v2. 2

8 Representations
Package: xsd_schemas

Notes: This package contains the main classes used to define and exchange representation
data in RESQML. Other packages in RESQML also define representations and may
leverage objects in this Representation package; those other packages include:
• Grids
• Structural
• Wells
• Seismic
• Streamlines
A representation refers to a digital description of a feature or interpretation. For example,
currently in RESQML, a horizon interpretation may be represented by a point set, a set of
triangulated surfaces, or a set of orthogonal grids.
A representation has two distinct and complementary roles in RESQML:
It is an important component of the feature/interpretation/representation/property
knowledge hierarchy where it corresponds to a 3D modeling expression of a feature that
was initialized at the beginning of a business process. For example, the same horizon
feature-interpretation can have a 2D grid representation or a triangulated set
representation.
It supports the geometry and properties of data-objects in RESQML. The geometry of a
representation is contained within the representation, while properties may be attached to
the representation. Each property is “attached” to the indexable elements of a
representation, which may be as simple as the nodes on a single triangulated surface or
as complex as the cell, nodes, faces, pillars, coordinate lines, columns, etc., for a 3D grid.

AbstractObject AbstractObject
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelEl...
+Representation AbstractRepresentation AbstractFeatureInterpretation
«XSDelement» «XSDelement»
+ RealizationIndex: PositiveLong [0..1] + Domain: Domain [0..1]
+ RepresentedObject: DataObjectReference [0..1]
+Representation 1..*

«XSDcomplexType,XSDtopLevelElement»
string RepresentationSetRepresentation
«enumeration»
IdentityKind «XSDelement»
+ IsHomogeneous: boolean
collocation
previous collocation
equivalence
previous equivalence

«XSDcomplexType»
ContactIdentity
«XSDcomplexType»
«XSDelement» AbstractSurfaceFrameworkRepresentation
+ ContactIndices: AbstractIntegerArray +ContactIdentity
«XSDcomplexType,XSDtopLevelElement»
+ IdenticalNodeIndices: AbstractIntegerArray [0..1] 0..* SealedVolumeFrameworkRepresentation
+ IdentityKind: IdentityKind

+BasedOn 1
«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType,XSDtopLevelElement»
NonSealedSurfaceFrameworkRepresentation
SealedSurfaceFrameworkRepresentation

+Contacts 0..*

«XSDcomplexType»
AbstractSurfaceFrameworkContact
«XSDelement»
+ Index: NonNegativeLong +Regions 1..*

«XSDcomplexType» «XSDcomplexType,XSDtopLevelElement»
VolumeRegion +Represents GeologicUnitInterpretation
«XSDelement»
+ DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
+ DepositionalFacies: DepositionalFaciesKindExt [0..1]
+ GeologicUnit3dShape: Shape3dExt [0..1]
+ GeologicUnitComposition: LithologyKindExt [0..1]
+Contacts 0..* +InternalShells 0..* +ExternalShell 1
+ GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1]
«XSDcomplexType» «XSDcomplexType» «XSDcomplexType» «XSDcomplexType» «XSDcomplexType»
+Geometry
ContactReference AbstractGeometry NonSealedContact SealedContact VolumeShell
0..1
«XSDelement» «XSDelement»
+ IdenticalNodeIndices: AbstractIntegerArray [0..1] + PatchIndicesOfRepresentation: IntegerExternalArray
+ IdentityKind: IdentityKind + RepresentationIndices : IntegerExternalArray
+ SideIsPlus: BooleanExternalArray

+Patches 0..* +Patches 2..*

«XSDcomplexType»
ContactPatch
«XSDelement»
+ RepresentationIndex: NonNegativeLong
+ SupportingRepresentationNodes: AbstractIntegerArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 232


RESQML Technical Reference Guide v2. 2

«XSDcomplexType» «XSDcomplexType» «XSDcomplexType»


Grids::SplitNodePatch Grids::UnstructuredGpGridPatch PolylineSetPatch

«XSDelement» «XSDelement» «XSDelement»


+ CellsPerSplitNode: JaggedArray + UnstructuredCellCount: NonNegativeLong + ClosedPolylines: AbstractBooleanArray
+ Count: PositiveLong + IntervalCount: NonNegativeLong
+ ParentNodeIndices: AbstractIntegerArray + NodeCount: PositiveLong
+ NodeCountPerPolyline: AbstractIntegerArray

«XSDcomplexType»
«XSDcomplexType» Grids::IjkGpGridPatch
Structural::ContactPatch
«XSDelement»
«XSDelement» + Ni: NonNegativeLong
+ RepresentationIndex: NonNegativeLong + Nj: NonNegativeLong
+ SupportingRepresentationNodes: AbstractIntegerArray + RadialGridIsComplete: boolean [0..1]

«XSDcomplexType»
Grids::UnstructuredColumnLayerGpGridPatch

«XSDelement»
+ UnstructuredColumnCount: NonNegativeLong
«XSDcomplexType»
SubRepresentationPatch

«XSDelement»
+ Indices: AbstractIntegerArray +TruncationCellPatch 0..1 +TruncationCellPatch 0..1

«XSDcomplexType»
«XSDcomplexType» «XSDcomplexType» Grids::TruncationCellPatch
Structural::TrianglePatch Structural::EdgePatch «XSDcomplexType»
+SplitEdgePatch Grids::SubnodePatch «XSDelement»
«XSDelement» «XSDelement» + LocalFacesPerCell: JaggedArray
0..*
+ NodeCount: NonNegativeLong + SplitEdges: AbstractIntegerArray «XSDelement» + NodesPerTruncationFace: JaggedArray
+ Triangles: AbstractIntegerArray + NodeWeightsPerSubnode: AbstractValueArray + ParentCellIndices: AbstractIntegerArray
+ SubnodeNodeObject: SubnodeNodeObject + TruncationCellCount: PositiveLong
+ TruncationCellFaceIsRightHanded: AbstractBooleanArray
+ TruncationFaceCount: PositiveLong
+ TruncationFacesPerCell: JaggedArray
+ TruncationNodeCount: PositiveLong

«XSDcomplexType» «XSDcomplexType»
Grids::UniformSubnodePatch Grids::VariableSubnodePatch

«XSDelement» «XSDelement»
+ SubnodeCountPerObject: PositiveLong + ObjectIndices: AbstractIntegerArray
+ SubnodeCountPerSelectedObject: AbstractIntegerArray

«XSDcomplexType»
Grids::ColumnSubnodePatch

«XSDelement»
+ SubnodeCountPerObject: AbstractIntegerArray

AbstractObject AbstractObject
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»
AbstractRepresentation RepresentationIdentitySet
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]
+RepresentationIdentity 1..*
+Representation 1..* +Representation

«XSDcomplexType»
RepresentationIdentity
«XSDelement»
+ IdenticalElementCount: PositiveLong string
«enumeration»
IdentityKind
collocation
+ElementIdentity 2..* previous collocation
equivalence
«XSDcomplexType,XSDtopLeve... «XSDcomplexType,XSDtopLevelEl... «XSDcomplexType» previous equivalence
RepresentationSetRepresentation SubRepresentation ElementIdentity

«XSDelement» «XSDelement» TypeEnum


«XSDelement» + IndexableElement: IndexableElement + ElementIndices: AbstractIntegerArray [0..1]
+ IsHomogeneous: boolean + IdentityKind: IdentityKind «enumeration»
+ IndexableElement: IndexableElement IndexableElement
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» cells
WellboreFrameRepresentation GridConnectionSetRepresentation
intervals from datum
«XSDelement» «XSDelement» column edges
+ NodeCount: PositiveLong + CellIndexPairs: AbstractIntegerArray columns
+ NodeMd: AbstractFloatingPointArray + Count: PositiveLong
+FromTimeIndex 0..1 +ToTimeIndex 0..1 contacts
+ WitsmlLog: DataObjectReference [0..1] + GridIndexPairs: AbstractIntegerArray [0..1] coordinate lines
«XSDcomplexType»
+ LocalFacePerCellIndexPairs: AbstractIntegerArray [0..1] TimeIndex edges
edges per column
«XSDelement» enumerated elements
+ Index: NonNegativeLong faces
faces per cell
interval edges
intervals
I0
I0 edges
J0
J0 edges
layers
lines
nodes
nodes per cell
nodes per edge
nodes per face
patches
pillars
regions
representation
subnodes
triangles

Standard: v2.2 / Document: v1.0 / May 16, 2022 233


RESQML Technical Reference Guide v2. 2

TypeEnum
«enumeration»
IndexableElement
cells
intervals from datum
column edges
columns
contacts
coordinate lines
edges
AbstractObject edges per column
«XSDcomplexType,XSDtopLevelElement» enumerated elements
AbstractRepresentation faces
+SupportingRepresentation faces per cell
«XSDelement» interval edges
+ RealizationIndex: PositiveLong [0..1] 1 intervals
+ RepresentedObject: DataObjectReference [0..1] I0
I0 edges
J0
J0 edges
layers
lines
nodes
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType» nodes per cell
SubRepresentation SubRepresentationPatch nodes per edge
+SubRepresentationPatch nodes per face
«XSDelement» 1..* «XSDelement» patches
+ IndexableElement: IndexableElement + Indices: AbstractIntegerArray pillars
regions
representation
subnodes
+AdditionalGridTopology
triangles
0..1

«XSDcomplexType» «XSDcomplexType»
RepresentationIdentity +AdditionalGridTopology AdditionalGridTopology
0..1
«XSDelement»
+ IdenticalElementCount: PositiveLong

Standard: v2.2 / Document: v1.0 / May 16, 2022 234


RESQML Technical Reference Guide v2. 2

8.1 AbstractRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/7/2012 Last modified:9/28/2021 Status: Approved Author: deny /JFR
Notes: The parent class of all specialized digital descriptions, which may provide a
representation of any kind of representable object such as interpretations, technical
features, or WITSML wellbores. It may be either of these:
• based on a topology and contains the geometry of this digital description.
• based on the topology or the geometry of another representation.

Not all representations require a defined geometry. For example, a defined geometry is not required for
block-centered grids or wellbore frames. For representations without geometry, a
software writer may provide null (NaN) values in the local 3D CRS, which is mandatory.

TimeIndex is provided to describe time-dependent geometry.

Attributes
Name Type Notes
Optional element indicating a realization id
(metadata). Used if the representation is
created by a stochastic or Monte Carlo
RealizationIndex PositiveLong
method. Representations with the same id
are based on the same set of random
values.
BUSINESS RULE: The data object
RepresentedObject DataObjectReference represented by the representation is either
an interpretation or a technical feature.

Associations
Association Notes
From: AbstractRepresentation. To:
AbstractTechnicalFeature
From: AbstractRepresentation. To:
AbstractObject
From: Seismic2dPostStackRepresentation.
To: AbstractRepresentation
From:
AbstractProperty.SupportingRepresentation
To: AbstractRepresentation
From: WellboreTrajectoryRepresentation. 1..1
To: AbstractRepresentation
From: PatchBoundaries.OuterRing OuterRing defines the extension of a representation
0..1 To: AbstractRepresentation patch. Inside the ring, the patch is defined, outside it is
not.

The associated representation is used to limit the


extension. The patch is limited by the contact between
the patch and the associated representation.
From:
ParametricLineFromRepresentationGeometry.Supporti
ngRepresentation
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 235


RESQML Technical Reference Guide v2. 2

Association Notes
From: WellboreFrameRepresentation.
To: AbstractRepresentation
From:
RepresentationSetRepresentation.Representation
1..* To: AbstractRepresentation
From: PointSetRepresentation. To:
AbstractRepresentation
From: PolylineSetRepresentation. To:
AbstractRepresentation
From: SubRepresentation. To:
AbstractRepresentation
From: RepresentationSetRepresentation.
To: AbstractRepresentation
From: PatchBoundaries.InnerRing A hole inside a representation patch. Inside the ring,
0..* To: AbstractRepresentation the representation patch is not defined, outside it is.

The associated representations are used to define the


holes. The holes occur inside the contact between the
patch and the associated representations.
From: BUSINESS RULE: The target root representation must
Point3dFromRepresentationLatticeArray.SupportingRe have nodes as indexable elements.
presentation
To: AbstractRepresentation
From: AbstractGridRepresentation. To:
AbstractRepresentation
From: BUSINESS RULE: The seismic support must be a
AbstractSeismicCoordinates.SeismicSupport representation of a seismic lattice or seismic line.
To: AbstractRepresentation
From: PolylineRepresentation. To:
AbstractRepresentation
From:
ParametricLineFromRepresentationLatticeArray.Supp
ortingRepresentation
To: AbstractRepresentation
From: AbstractSurfaceRepresentation.
To: AbstractRepresentation
From: ElementIdentity.Representation BUSINESS RULE: Each list of (sub)representation
To: AbstractRepresentation elements must have the same count (ElementCount).
From: ContactReference.Representation
To: AbstractRepresentation
From: Graph2dRepresentation. To:
AbstractRepresentation
From: One patch of a sub-representation is defined on one
SubRepresentationPatch.SupportingRepresentation supporting representation. Patches and supporting
1 To: AbstractRepresentation representations are ordered the same. If patches are
on the same supporting representations, they can be
repeated.
From: AbstractGridRepresentation. To:
AbstractRepresentation
From: WellboreIntervalSet. To:
AbstractRepresentation
From: StreamlinesRepresentation. To:
AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 236


RESQML Technical Reference Guide v2. 2

Association Notes
From: GridConnectionSetRepresentation.
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 237


RESQML Technical Reference Guide v2. 2

8.2 ElementIdentity
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/13/2014 Last modified:10/1/2021 Status: Approved Author: philippe
Notes: Indicates the nature of the relationship between 2 or more representations, specifically if
they are partially or totally identical. For possible types of relationships, see IdentityKind.
Commonly used to identify contacts between representations in model descriptions. May also be used to
relate the components of a grid (e.g., pillars) to those of a structural framework.

Attributes
Name Type Notes
Indicates which elements are identical
based on their indices in the
(sub)representation.
If not given, then the selected indexable
elements of each of the selected
ElementIndices AbstractIntegerArray representations are identical at the
element by element level.
BUSINESS RULE: The number of identical
elements must be equal to
identicalElementCount for each
representation.
Must be one of the enumerations in
IdentityKind IdentityKind
IdentityKind.
IndexableElement IndexableElement

Associations
Association Notes
From: ElementIdentity.ToTimeIndex
0..1 To: TimeIndex
From: ElementIdentity.FromTimeIndex
0..1 To: TimeIndex
From: ElementIdentity.Representation BUSINESS RULE: Each list of (sub)representation
To: AbstractRepresentation elements must have the same count (ElementCount).
From: RepresentationIdentity.ElementIdentity
2..* To: ElementIdentity

Standard: v2.2 / Document: v1.0 / May 16, 2022 238


RESQML Technical Reference Guide v2. 2

8.3 ElementIndices
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/11/2013 Last modified:11/1/2016 Status: Approved Author: mike.king
Notes: Index into the indexable elements selected.

Attributes
Name Type Notes
SupportingRepresentationIndex AbstractIntegerArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 239


RESQML Technical Reference Guide v2. 2

8.4 IdentityKind
Type: Enumeration Stereotype:
Detail: Created: 8/23/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Enumeration of the identity k inds for the element identities (ElementIdentity).

Attributes
Name Type Notes
A set of (sub)representations is collocated
if there is bijection between the simple
elements of all of the participating
(sub)representations. This definition
implies there is the same number of simple
elements.
collocation External Reference
NOTE: The geometric location of each set
of simple elements mapped through the
bijection is intended to be identical even if
the numeric values of the associated
geometries differ, i.e., due to loss of spatial
resolution.
The participating (sub)representations
were collocated at some time in the
previous collocation External Reference
geologic past—but not necessarily in the
present day earth model.
A set of (sub)representations is equivalent
if there is a map giving an association
equivalence External Reference between some of the simple topological
elements of the participating
(sub)representations.
The participating (sub)representations
were equivalent at some time in the
previous equivalence External Reference
geologic past—but not necessarily in the
present day earth model.

Standard: v2.2 / Document: v1.0 / May 16, 2022 240


RESQML Technical Reference Guide v2. 2

8.5 PolylineSetPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/12/2013 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: A Patch containing a set of polylines.

For performance reasons, the geometry of each Patch is described in only one 1D array of 3D points,
which aggregates the nodes of all the polylines together.

To be able to separate the polyline descriptions, additional information is added about the type of each
polyline (closed or not) and the number of 3D points (node count) of each polyline.

This additional information is contained in two arrays, which are associated with each polyline set patch.
The dimension of these arrays is the number of polylines gathered in one polyline set
patch.
• The first array contains a Boolean for each polyline (closed or not closed).
The second array contains the count of nodes for each polyline.

Attributes
Name Type Notes
Indicates whether a polyline is closed.

If closed, then the interval count for that


ClosedPolylines AbstractBooleanArray polyline is equal to the node count.

If open, then the interval count for that


polyline is one less than the node count.
Total number of intervals.
IntervalCount NonNegativeLong
BUSINESS RULE: Should be equal to the
sum of the count of intervals per polyline.
Total number of nodes.
NodeCount PositiveLong
BUSINESS RULE: Should be equal to the
sum of the number of nodes per polyline.
The first number in the list defines the
node count for the first polyline in the
polyline set patch.
NodeCountPerPolyline AbstractIntegerArray The second number in the list defines the
node count for the second polyline in the
polyline set patch.
etc.

Associations
Association Notes
From: PolylineSetPatch.IntervalGridCells
0..1 To: IntervalGridCells
From: PolylineSetPatch.Geometry
To: PointGeometry
From: PolylineSetRepresentation.LinePatch
1..* To: PolylineSetPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 241


RESQML Technical Reference Guide v2. 2

Association Notes
From: StreamlinesRepresentation.Geometry
0..1 To: PolylineSetPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 242


RESQML Technical Reference Guide v2. 2

8.6 RepresentationIdentity
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/21/2012 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: Indicates the nature of the relationship between 2 or more representations, specifically if
they are partially or totally identical. For possible types of relationships, see IdentityKind.

Attributes
Name Type Notes
Number of elements within each
IdenticalElementCount PositiveLong representation for which a representation
identity is specified.

Associations
Association Notes
From:
RepresentationIdentity.AdditionalGridTopology
0..1 To: AdditionalGridTopology
From: RepresentationIdentity.ElementIdentity
2..* To: ElementIdentity
From:
RepresentationIdentitySet.RepresentationIdentity
1..* To: RepresentationIdentity

Standard: v2.2 / Document: v1.0 / May 16, 2022 243


RESQML Technical Reference Guide v2. 2

8.7 RepresentationIdentitySet
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/22/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: A collection of representation identities.

Associations
Association Notes
From: RepresentationIdentitySet. To:
AbstractObject
From:
RepresentationIdentitySet.RepresentationIdentity
1..* To: RepresentationIdentity

Standard: v2.2 / Document: v1.0 / May 16, 2022 244


RESQML Technical Reference Guide v2. 2

8.8 RepresentationSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/22/2012 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: The parent class of the framework representations. It is used to group together individual
representations to represent a “bag” of representations. If the individual representations
are all of the same, then you can indicate that the set is homogenous.
These “bags” do not imply any geologic consistency. For example, you can define a set of wellbore
frames, a set of wellbore trajectories, a set of blocked wellbores.
Because the framework representations inherit from this class, they inherit the capability to gather
individual representations into sealed and non-sealed surface framework representations,
or sealed volume framework representations.
For more information, see the RESQML Technical Usage Guide.

Attributes
Name Type Notes
Indicates that all of the selected
IsHomogeneous boolean
representations are of a single kind.

Associations
Association Notes
From:
RepresentationSetRepresentation.Representation
1..* To: AbstractRepresentation
From: RepresentationSetRepresentation.
To: AbstractRepresentation
From:
SealedVolumeFrameworkRepresentation. To:
RepresentationSetRepresentation
From:
AbstractSurfaceFrameworkRepresentation. To:
RepresentationSetRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 245


RESQML Technical Reference Guide v2. 2

8.9 SubRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/21/2012 Last modified:1/1/2017 Status: Approved Author: philippe
Notes: An ordered list of indexable elements and/or indexable element pairs of an existing
representation.
Because the representation concepts of topology, geometry, and property values are separate in
RESQML, it is now possible to select a range of nodes, edges, faces, or volumes (cell)
indices from the topological support of an existing representation to define a sub-
representation.
A sub-representation may describe a different feature interpretation using the same geometry or property
as the "parent" representation. In this case, the only information exchanged is a set of
potentially non-consecutive indices of the topological support of the representation.

Optional additional grid topology is available for grid representations.

Attributes
Name Type Notes
IndexableElement IndexableElement

Associations
Association Notes
From: SubRepresentation. To:
AbstractRepresentation
From:
SubRepresentation.SubRepresentationP atch
1..* To: SubRepresentationPatch
From:
SubRepresentation.AdditionalGridTopology
0..1 To: AdditionalGridTopology

Standard: v2.2 / Document: v1.0 / May 16, 2022 246


RESQML Technical Reference Guide v2. 2

8.10 SubRepresentationPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/2/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Each sub-representation patch has its own list of representation indices, drawn from the
supporting representation.

If a list of pairwise elements is required, use two ElementIndices. The count of elements (or pair of
elements) is defined in SubRepresentationPatch.

Attributes
Name Type Notes
Indices AbstractIntegerArray

Associations
Association Notes
From: One patch of a sub-representation is defined on one
SubRepresentationPatch.SupportingRepresentation supporting representation. Patches and supporting
1 To: AbstractRepresentation representations are ordered the same. If patches are
on the same supporting representations, they can be
repeated.
From:
SubRepresentation.SubRepresentationP atch
1..* To: SubRepresentationPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 247


RESQML Technical Reference Guide v2. 2

9 Seismic
Package: xsd_schemas

Notes: This package contains classes for features, interpretations, representations and related
objects used to define and exchange seismic survey data in RESQML.
A RESQML seismic survey representation makes use of previously defined
representations, with the addition of seismic coordinates to their geometry.
A seismic survey is an organization of seismic lines. For the context of RESQML, a
seismic survey does not refer to any vertical dimension information, but only areally at
shot point locations or common midpoint gathers. The seismic traces, if needed by
reservoir models, are transferred in an industry standard format such as SEGY. The
SEGY format contains information about the number of samples in the seismic traces
and whether the vertical domain is in time or depth. This section only discusses the areal
aspects of seismic surveys.
RESQML supports two basic kinds of seismic surveys:
• seismic lattice (organization of the traces for the 3D acquisition and processing
phases).
• seismic line (organization of the traces for the 2D acquisition and processing
phases).
Additionally, to transport several seismic surveys together:
• Seismic lattices can be aggregated into a seismic lattice set.
• Seismic lines can be aggregated into a seismic line set.
Thus there are four groupings of seismic surveys, which are represented in RESQML as
follows:
• A seismic lattice is generally represented using a 2D grid representation.
• A seismic lattice set is represented using a set of 2D grid representations.
• A seismic line is generally represented using a polyline representation.
• The seismic line set is then represented by a set of polyline representations.

In RESQML seismic surveys are technical features that do not have multiple
interpretations. Although it is possible to re-interpret a seismic survey for improved
physical properties or for positioning, these types of relationships are not included within
the RESQML knowledge hierarchy.

Standard: v2.2 / Document: v1.0 / May 16, 2022 248


RESQML Technical Reference Guide v2. 2

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]

«XSDcomplexType,XSDt... «XSDcomplexType,XSDtopL...
Grids:: Structural::
AbstractGridRepresentation AbstractSurfaceRepresentation
«XSDelement»
+ SurfaceRole: SurfaceRole

«XSDcomplexType,XSDto... «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement»


Structural:: +SeismicLineRepresentation Seismic2dPostStackRepresentation Seismic3dPostStackRepresentation
«XSDcomplexType,XSDtopLev...
PolylineRepresentation Grids::Grid2dRepresentation
«XSDelement» «XSDelement»
«XSDelement» + SeismicLineSubSampling: IntegerLatticeArray + SeismicLatticeSubSampling: IntegerLatticeArray +SeismicLatticeRepresentation «XSDelement»
+ IsClosed: boolean + TraceSampling: FloatingPointLatticeArray + TraceSampling: FloatingPointLatticeArray
+ FastestAxisCount: PositiveLong
+ LineRole: LineRoleExt [0..1] + SlowestAxisCount: PositiveLong

+LocalCrs +LocalCrs

AbstractCompoundCrs
«XSDcomplexType,XSDtopLevelElem...
CRS::LocalEngineeringCompoundCrs
«XSDelement»
+ OriginVerticalCoordinate: double

Standard: v2.2 / Document: v1.0 / May 16, 2022 249


RESQML Technical Reference Guide v2. 2

9.1 AbstractSeismicCoordinates
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/4/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: Parent class that is used to associate horizon and fault representations to seismic 2D and
seismic 3D technical features. It stores a 1-to-1 mapping between geometry coordinates
(usually X, Y, Z) and trace or inter-trace positions on a seismic survey.

Associations
Association Notes
From: BUSINESS RULE: The seismic support must be a
AbstractSeismicCoordinates.SeismicSupport representation of a seismic lattice or seismic line.
To: AbstractRepresentation
From: Seismic2dCoordinates. To:
AbstractSeismicCoordinates
From: PointGeometry.SeismicCoordinates
0..1 To: AbstractSeismicCoordinates
From: Seismic3dCoordinates. To:
AbstractSeismicCoordinates

Standard: v2.2 / Document: v1.0 / May 16, 2022 250


RESQML Technical Reference Guide v2. 2

9.2 AbstractSeismicLineFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/26/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Location of the line used in a 2D seismic acquisition.

Defined by one lateral dimension: trace (lateral).

To specify its location, the seismic feature can be associated with the seismic coordinates of the points of
a representation.

Represented by a PolylineRepresentation.

Attributes
Name Type Notes
TraceLabels StringExternalArray

Associations
Association Notes
From: AbstractSeismicLineFeature. To:
AbstractSeismicSurveyFeature
From: AbstractSeismicLineFeature.IsPartOf
0..1 To: SeismicLineSetFeature
From: CmpLineFeature. To:
AbstractSeismicLineFeature
From: ShotPointLineFeature. To:
AbstractSeismicLineFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 251


RESQML Technical Reference Guide v2. 2

9.3 AbstractSeismicSurveyFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/7/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: An organization of seismic lines. For the context of RESQML, a seismic survey does not
refer to any vertical dimension information, but only areally at shot point locations or
common midpoint gathers. The seismic traces, if needed by reservoir models, are
transferred in an industry standard format such as SEGY.
RESQML supports these basic types of seismic surveys:
• seismic lattice (organization of the traces for the 3D acquisition and processing
phases).
• seismic line (organization of the traces for the 2D acquisition and processing
phases).
Additionally, these seismic lattices and seismic lines can be aggregated into sets.

Associations
Association Notes
From: AbstractSeismicSurveyFeature.
To: AbstractTechnicalFeature
From: SeismicLatticeSetFeature. To:
AbstractSeismicSurveyFeature
From: AbstractSeismicLineFeature. To:
AbstractSeismicSurveyFeature
From: SeismicLatticeFeature. To:
AbstractSeismicSurveyFeature
From: SeismicLineSetFeature. To:
AbstractSeismicSurveyFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 252


RESQML Technical Reference Guide v2. 2

9.4 CmpLineFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/19/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: Location of a single line of common mid-points (CMP) resulting from a 2D seismic
acquisition

Attributes
Name Type Notes
Index of closest shot point (inside the
NearestShotPointIndices AbstractIntegerArray associated CmpPointLineFeature) for each
cmp.

Associations
Association Notes
From: CmpLineFeature.ShotPointLineFeature Line of shots used to generate the current common
0..1 To: ShotPointLineFeature midpoints.
From: CmpLineFeature. To:
AbstractSeismicLineFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 253


RESQML Technical Reference Guide v2. 2

9.5 Seismic2dCoordinates
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/4/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A group of 2D seismic coordinates that stores the 1-to-1 mapping between geometry
patch coordinates (usually X, Y, Z) and trace or inter-trace positions on a seismic line.
BUSINESS RULE: This patch must reference a geometry patch by its UUID.

Attributes
Name Type Notes
The sequence of trace or inter-trace
positions that correspond to the geometry
LineAbscissa AbstractFloatingPointArray coordinates.
BUSINESS RULE: Both sequences must
be in the same order.
The sequence of vertical sample or inter-
sample positions that corresponds to the
VerticalCoordinates AbstractFloatingPointArray geometry coordinates.
BUSINESS RULE: Sequence must be in
the same order as the previous one.

Associations
Association Notes
From: Seismic2dCoordinates. To:
AbstractSeismicCoordinates

Standard: v2.2 / Document: v1.0 / May 16, 2022 254


RESQML Technical Reference Guide v2. 2

9.6 Seismic2dPostStackRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/2/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: The feature of this representation should be the same survey feature as the associated
PolylineRepresentation represents..

The indexing convention (mainly for associated properties) is :


• Trace sample goes fastest
• Then polyline node slowest
The indexing convention only applies to HDF datasets (not SEGY file).
A whole SEGY file can be referenced in properties of this representation, but not partial files.

Attributes
Name Type Notes
This array must be one dimension and
count must be the node count in the
associated seismic line i.e.,
polylineRepresentation.

SeismicLineSubSampling IntegerLatticeArray The index is based on array indexing, not


on index labeling of traces.

The values of the integer lattice array are


the increments between 2 consecutive
subsampled nodes.
Defines the sampling in the vertical
dimension of the representation.

TraceSampling FloatingPointLatticeArray This array must be one dimension.

The values are given with respect to the


associated local CRS.

Associations
Association Notes
From: Seismic2dPostStackRepresentation.
To: AbstractRepresentation
From:
Seismic2dPostStackRepresentation.LocalCrs
To: LocalEngineeringCompoundCrs
From:
Seismic2dPostStackRepresentation.SeismicLineRepre
sentation
To: PolylineRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 255


RESQML Technical Reference Guide v2. 2

9.7 Seismic3dCoordinates
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/4/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: The 1-to-1 mapping between geometry coordinates (usually X, Y, Z or X, Y, TWT) and
trace or inter-trace positions on a seismic lattice.

Attributes
Name Type Notes
The sequence of trace or inter-trace
crossline positions that correspond to the
CrosslineCoordinates AbstractFloatingPointArray geometry coordinates.
BUSINESS RULE: Both sequences must
be in the same order.
The sequence of trace or inter-trace inline
positions that correspond to the geometry
InlineCoordinates AbstractFloatingPointArray coordinates.
BUSINESS RULE: Both sequences must
be in the same order.
The sequence of vertical sample or inter-
sample positions that corresponds to the
VerticalCoordinates AbstractFloatingPointArray geometry coordinates.
BUSINESS RULE: Sequence must be in
the same order as the two previous ones.

Associations
Association Notes
From: Seismic3dCoordinates. To:
AbstractSeismicCoordinates

Standard: v2.2 / Document: v1.0 / May 16, 2022 256


RESQML Technical Reference Guide v2. 2

9.8 Seismic3dPostStackRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/1/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: The feature of this representation should be the same survey feature as the associated
Grid2Representation represents.

The indexing convention (mainly for associated properties) is:


• Trace sample goes fastest
• Then inline
• And crossline goes slowest
The indexing convention only applies to HDF datasets (not SEGY file).
A whole SEGY file can be referenced in properties of this representation, but not partial files.

Attributes
Name Type Notes
This array must be two dimensions:
- Fastest Axis is inline.
- Slowest Axis is crossline.

The index is based on array indexing, not


SeismicLatticeSubSampling IntegerLatticeArray on index labeling of inlines/crosslines.

The values of the integer lattice array are


the increments between 2 consecutive
subsampled nodes.

Defines the sampling in the vertical


dimension of the representation.

TraceSampling FloatingPointLatticeArray This array must be one dimension.

The values are given with respect to the


associated Local Crs.

Associations
Association Notes
From:
Seismic3dPostStackRepresentation.LocalCrs
To: LocalEngineeringCompoundCrs
From: Seismic3dPostStackRepresentation.
To: AbstractGridRepresentation
From:
Seismic3dPostStackRepresentation.SeismicLatticeRep
resentation
To: Grid2dRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 257


RESQML Technical Reference Guide v2. 2

9.9 SeismicLatticeFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/26/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Defined by two lateral ordered dimensions: inline (lateral), crossline (lateral and
orthogonal to the inline dimension), which are fixed.

To specify its location, a seismic feature can be associated with the seismic coordinates of the points of a
representation.

Represented by a 2D grid representation.

Attributes
Name Type Notes
The labels (as they would be found in
SEGY trace headers for example) of the
crosslines of the 3D seismic survey.
CrosslineLabels IntegerLatticeArray
BUSINESS RULE: Count of this array
must be the same as the count of nodes in
the slowest axis of the associated grid 2D
representations.
The labels (as they would be found in
SEGY trace headers for example) of the
inlines of the 3D seismic survey.
InlineLabels IntegerLatticeArray
BUSINESS RULE: Count of this array
must be the same as the count of nodes in
the fastest axis of the associated grid 2D
representations.

Associations
Association Notes
From: SeismicLatticeFeature.IsPartOf
0..1 To: SeismicLatticeSetFeature
From: SeismicLatticeFeature. To:
AbstractSeismicSurveyFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 258


RESQML Technical Reference Guide v2. 2

9.10 SeismicLatticeSetFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/6/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: An unordered set of several seismic lattices. Generally, it has no direct interpretation or
representation.

Associations
Association Notes
From: SeismicLatticeSetFeature. To:
AbstractSeismicSurveyFeature
From: SeismicLatticeFeature.IsPartOf
0..1 To: SeismicLatticeSetFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 259


RESQML Technical Reference Guide v2. 2

9.11 SeismicLineSetFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/26/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: An unordered set of several seismic lines. Generally, it has no direct interpretation or
representation.

Associations
Association Notes
From: SeismicLineSetFeature. To:
AbstractSeismicSurveyFeature
From: AbstractSeismicLineFeature.IsPartOf
0..1 To: SeismicLineSetFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 260


RESQML Technical Reference Guide v2. 2

9.12 ShotPointLineFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/19/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: Location of a single line of shot points in a 2D seismic acquisition.

Associations
Association Notes
From: ShotPointLineFeature. To:
AbstractSeismicLineFeature
From: CmpLineFeature.ShotPointLineFeature Line of shots used to generate the current common
0..1 To: ShotPointLineFeature midpoints.

Standard: v2.2 / Document: v1.0 / May 16, 2022 261


RESQML Technical Reference Guide v2. 2

10 Streamlines
Package: xsd_schemas

Notes: This package contains classes for features, interpretations, representations and related
objects used to define and exchange seismic survey data in RESQML.
Streamlines are used in a reservoir engineering context to visualize the directions of fluid
flow within a reservoir. Streamlines are static geometric trajectories in space that are
based upon fluid velocities at a specified time. The velocities may be obtained from the
flow of a fluid phase, e.g., water, oil, gas, or the sum of phases, or the flow of
components, e.g., CO2 or CH4, or they may describe the flow of another attribute, e.g.,
temperature and thermal flux. Streamlines differ from the "streaklines" that describe the
physical trajectories of particles in a time-varying velocity field.

AbstractObject AbstractObject
«XSDcomplexType,XSDtopLevelElement» +InterpretedFeature «XSDcomplexType,XSDtopLevelElement»
Features::AbstractFeature Interpretations::AbstractFeatureInterpretation
«XSDelement» «XSDelement»
string + IsWellKnown: boolean + Domain: Domain [0..1]
«enumeration»
StreamlineFlux
oil «XSDcomplexType,XSDtopLev...
gas Features::
water
AbstractTechnicalFeature
total
other
«XSDcomplexType,XSDtopLevelElem...
Interpretations::
GenericFeatureInterpretation

«XSDcomplexType,XSDtopLevelEle... «XSDcomplexType» AbstractObject


EnumExtensionPattern StreamlinesFeature CommonTypes::
+TimeIndex
«XSDcomplexType,XSDtopLevelEl...
«XSDunion» «XSDelement» TimeIndex +TimeSeries
CommonTypes::TimeSeries
StreamlineFluxExt + Flux: StreamlineFluxExt
«XSDelement» «XSDelement»
+ Index: NonNegativeLong + Time: GeologicTime [1..-1] {ordered}
+ TimeStep: AbstractIntegerArray [0..1]

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]

«XSDcomplexType,XSDtopLevelElement»
Grids::AbstractGridRepresentation

+Grid 1..*

«XSDcomplexType,XSDtopLevelElem... «XSDcomplexType» «XSDcomplexType»


StreamlinesRepresentation Representations::PolylineSetPatch Grids::IntervalGridCells
+Geometry
«XSDelement» «XSDelement»
+ LineCount: PositiveLong 0..1 +IntervalGridCells «XSDelement»
+ ClosedPolylines: AbstractBooleanArray + CellCount: PositiveLong
+ IntervalCount: NonNegativeLong 0..1
+ CellIndices: AbstractIntegerArray
+ NodeCount: PositiveLong + GridIndices: AbstractIntegerArray
+ NodeCountPerPolyline: AbstractIntegerArray + LocalFacePairPerCellIndices: AbstractIntegerArray

«XSDcomplexType,XSDtopLevelElement» +StreamlineWellbores 0..1


Wells::WellboreTrajectoryRepresentation «XSDcomplexType»
+WellboreTrajectoryRepresentation
«XSDelement» StreamlineWellbores
+ CustomUnitDictionary: DataObjectReference [0..1] 1..*
«XSDelement»
+ MdDomain: MdDomain [0..1]
+ InjectorPerLine: AbstractIntegerArray
+ MdInterval: MdInterval
+ ProducerPerLine: AbstractIntegerArray
+ WitsmlTrajectory: DataObjectReference [0..1]

Standard: v2.2 / Document: v1.0 / May 16, 2022 262


RESQML Technical Reference Guide v2. 2

10.1 StreamlineFlux
Type: Enumeration Stereotype:
Detail: Created: 12/11/2014 Last modified:11/1/2016 Status: Proposed Author: mike.king
Notes: Enumeration of the usual streamline fluxes

Attributes
Name Type Notes
oil Oil Phase flux
gas Gas Phase flux
water Water Phase flux
total Sum of (Water + Oil + Gas) Phase fluxes
Used to indicate that another flux is being
traced.
other
BUSINESS RULE: OtherFlux should
appear if this value is specified.

Associations
Association Notes
From: StreamlineFluxExt. To:
StreamlineFlux

Standard: v2.2 / Document: v1.0 / May 16, 2022 263


RESQML Technical Reference Guide v2. 2

10.2 StreamlineFluxExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 7/6/2021 Last modified:7/6/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: StreamlineFluxExt. To:
StreamlineFlux
From: StreamlineFluxExt. To:
EnumExtensionPattern
From: StreamlinesFeature. To:
StreamlineFluxExt

Standard: v2.2 / Document: v1.0 / May 16, 2022 264


RESQML Technical Reference Guide v2. 2

10.3 StreamlinesFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/12/2014 Last modified:11/1/2016 Status: Proposed Author: mike.king
Notes: Specification of the vector field upon which the streamlines are based. Streamlines are
commonly used to trace the flow of phases (water / oil / gas / total) based upon their flux
at a specified time. They may also be used for trace components for compositional
simulation, e.g., CO2, or temperatures for thermal simulation.

The flux enumeration provides support for the most usual cases with provision for extensions to other
fluxes.

Attributes
Name Type Notes
Specification of the streamline flux, drawn
Flux StreamlineFluxExt
from the enumeration.

Associations
Association Notes
From: StreamlinesFeature. To:
AbstractTechnicalFeature
From: StreamlinesFeature. To:
StreamlineFluxExt
From: StreamlinesFeature.TimeIndex
To: TimeIndex

Standard: v2.2 / Document: v1.0 / May 16, 2022 265


RESQML Technical Reference Guide v2. 2

10.4 StreamlinesRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/11/2014 Last modified:11/1/2016 Status: Proposed Author: mike.king
Notes: Representation of streamlines associated with a streamline feature and interpretation.

Use StreamlinesFeature to define the vector field that supports the streamlines, i.e., describes what flux is
being traced.

Use Interpretation to distinguish between shared and differing interpretations.

Usage Note: When defining streamline geometry, the PatchIndex is not referenced and may be set to a
value of 0.

Attributes
Name Type Notes
LineCount PositiveLong Number of streamlines.

Associations
Association Notes
From:
StreamlinesRepresentation.StreamlineWellbores
0..1 To: StreamlineWellbores
From: StreamlinesRepresentation. To:
AbstractRepresentation
From: StreamlinesRepresentation.Geometry
0..1 To: PolylineSetPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 266


RESQML Technical Reference Guide v2. 2

10.5 StreamlineWellbores
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/11/2014 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: Used to specify the wellbores on which streamlines may originate or terminate. Additional
properties, e.g., MD, or cell index may be used to specify locations along a wellbore.

The 0-based wellbore index is defined by the order of the wellbore in the list of
WellboreTrajectoryRepresentation references.

Attributes
Name Type Notes
Size of array = LineCount.

InjectorPerLine AbstractIntegerArray Null values signify that that line does not
initiate at an injector, e.g., it may come
from fluid expansion or an aquifer.
Size of array = LineCount

Null values signify that that line does not


terminate at a producer, e.g., it may
ProducerPerLine AbstractIntegerArray approach a stagnation area.

BUSINESS RULE: The cell count must


equal the number of non-null entries in this
array.

Associations
Association Notes
From:
StreamlineWellbores.WellboreTrajectoryRepresentation
1..* To: WellboreTrajectoryRepresentation
From:
StreamlinesRepresentation.StreamlineWellbores
0..1 To: StreamlineWellbores

Standard: v2.2 / Document: v1.0 / May 16, 2022 267


RESQML Technical Reference Guide v2. 2

11 Structural
Package: xsd_schemas

Notes: This package contains classes for features, interpretations, representations and related
objects used to define and exchange seismic survey data in RESQML.
Representations are the digital descriptions of a feature interpretation or a technical
feature. This representation is based on a topology and contains the geometry of the
digital description or is based on the topology or the geometry of another representation.
Structural has two types of representations:
Representation of Individual Representations. Each Individual representation is
specialized by dimension (point, polyline, surface, volume) and represents only one
individual geological interpretation (such as, horizons, faults, geological bodies,
geological units, and fluids units).
Representation of Organization Representations. Each organization representations
is a consistent assembly of different representations of interpretations of organizations
(such as, earth model, structural organization, stratigraphic organizations, stratigraphic
columns, and fluid organizations).

AbstractObject +InnerRing

«XSDcomplexType,XSDtopLevelElement» 0..*

Representations::AbstractRepresentation +OuterRing
+Representation 0..1
1..*
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]

string
«XSDcomplexType» «XSDcomplexType,XSDtopLevelEleme... string «XSDcomplexType,XSDtopLevelEl... «XSDcomplexType»
ContactIdentity Representations:: «enumeration»
LineRole «enumer... AbstractSurfaceRepresentation PatchBoundaries
RepresentationSetRepresentation
«XSDelement» SurfaceRole
fault center line «XSDelement» «XSDelement»
+ ContactIndices: AbstractIntegerArray «XSDelement» map + SurfaceRole: SurfaceRole + ReferencedPatch: NonNegativeLong
pick +Boundaries
+ IdenticalNodeIndices: AbstractIntegerArray [0..1] + IsHomogeneous: boolean pick
inner ring
+ IdentityKind: IdentityKind outer ring
0..*

+ContactIdentity 0..* trajectory


interpretation line
contact
depositional line
erosion line
«XSDcomplexType»
contour
AbstractSurfaceFrameworkRepresentation
pillar
break line
structural closure
culture

«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevelElement» +BasedOn «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XS... «XSDcomplexType,XSDto... «XSDcomplexType,XSDto... «XSDcomplexType,XSDtopL... «XSDcomplexType,X... «XSDcomplexType,XSDtopLev...
NonSealedSurfaceFrameworkRepresentation SealedSurfaceFrameworkRepresentation SealedVolumeFrameworkRepresentation PointSetRepresentation PolylineRepresentation PolylineSetRepresentation TriangulatedSetRepresentation PlaneSetRepresentation Grids::Grid2dRepresentation
1
«XSDelement» «XSDelement» «XSDelement»
+ IsClosed: boolean + LineRole: LineRoleExt [0..1] + FastestAxisCount: PositiveLong
+ LineRole: LineRoleExt [0..1] + SlowestAxisCount: PositiveLong

+Contacts 0..*
EnumExtensionPattern
«XSDcomplexType»
AbstractSurfaceFrameworkContact +Regions 1..*
«XSDunion»
LineRoleExt
«XSDelement» «XSDcomplexType»
+ Index: NonNegativeLong VolumeRegion

+LinePatch 1..* +TrianglePatch 1..*

«XSDcomplexType» «XSDcomplexType» «XSDcomplexType»


Representations::PolylineSetPatch TrianglePatch EdgePatch
+SplitEdgePatch
+ExternalShell
+Contacts 0..*
+InternalShells1 0..* «XSDelement» «XSDelement» «XSDelement»
0..*
+ ClosedPolylines: AbstractBooleanArray + NodeCount: NonNegativeLong + SplitEdges: AbstractIntegerArray
«XSDcomplexType»
«XSDcomplexType» «XSDcomplexType» + IntervalCount: NonNegativeLong + Triangles: AbstractIntegerArray
SealedContact
NonSealedContact VolumeShell + NodeCount: PositiveLong
«XSDelement» + NodeCountPerPolyline: AbstractIntegerArray
«XSDelement»
+ IdenticalNodeIndices: AbstractIntegerArray [0..1]
+ PatchIndicesOfRepresentation: IntegerExternalArray
+ IdentityKind: IdentityKind
+ RepresentationIndices : IntegerExternalArray
+ SideIsPlus: BooleanExternalArray
+Patches 0..* +Patches 2..*

«XSDcomplexType»
ContactPatch
«XSDelement»
+ RepresentationIndex: NonNegativeLong
+ SupportingRepresentationNodes: AbstractIntegerArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 268


RESQML Technical Reference Guide v2. 2

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]
+OuterRing 0..1 +InnerRing 0..*

string «XSDcomplexType»
PatchBoundaries
«enumeration»
SurfaceRole «XSDelement»
«XSDcomplexType,XSDtopLe... + ReferencedPatch: NonNegativeLong
map
AbstractGridRepresentation
pick +Boundaries 0..*

«XSDcomplexType,XSDtopLevelElement»
AbstractSurfaceRepresentation
«XSDelement»
+ SurfaceRole: SurfaceRole
string
«enumeration»
LineRole
fault center line
pick
inner ring
outer ring
trajectory
interpretation line
contact
depositional line
erosion line
contour
pillar
break line
structural closure
culture

«XSDcomplexType,XSDtop... «XSDcomplexType,XSDto... «XSDcomplexType,XS... «XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLev... «XSDcomplexType,XS... «XSDcomplexType»


PolylineSetRepresentation PolylineRepresentation PointSetRepresentation Grid2dRepresentation TriangulatedSetRepresentation PlaneSetRepresentation AbstractGeometry

«XSDelement» «XSDelement» «XSDelement»


+ LineRole: LineRoleExt [0..1] + IsClosed: boolean + FastestAxisCount: PositiveLong
+ LineRole: LineRoleExt [0..1] + SlowestAxisCount: PositiveLong
+TimeIndex 0..1
+Planes
«XSDcomplexType» «XSDcomplexType»
1..*
AbstractPlaneGeometry TimeIndex
«XSDelement»
+TrianglePatch 1..* + Index: NonNegativeLong
«XSDcomplexType»
«XSDcomplexType»
EdgePatch
TrianglePatch +SplitEdgePatch
«XSDelement»
+LinePatch 1..* «XSDelement» 0..*
+ SplitEdges: AbstractIntegerArray
+ NodeCount: NonNegativeLong
«XSDcomplexType» + Triangles: AbstractIntegerArray
PolylineSetPatch +Geometry
«XSDcomplexType»
+Geometry PointGeometry
«XSDelement»
+ ClosedPolylines: AbstractBooleanArray +NodePatchGeometry «XSDelement»
+ IntervalCount: NonNegativeLong + Points: AbstractPoint3dArray
1..*
+ NodeCount: PositiveLong +NodePatchGeometry
+ NodeCountPerPolyline: AbstractIntegerArray 1
+Geometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 269


RESQML Technical Reference Guide v2. 2

11.1 AbstractSurfaceFrameworkContact
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/26/2014 Last modified:7/6/2021 Status: Approved Author: philippe
Notes: Parent class of the sealed and non-sealed contact elements.

Attributes
Name Type Notes
The index of the contact.
Indicates identity of the contact in the
Index NonNegativeLong surface framework context. It is used for
contact identities and to find the
interpretation of this particular contact.

Associations
Association Notes
From: SealedContact. To:
AbstractSurfaceFrameworkContact
From: NonSealedContact. To:
AbstractSurfaceFrameworkContact
From: ContactReference. To:
AbstractSurfaceFrameworkContact
From: Can contain sealed or non-sealed contact
NonSealedSurfaceFrameworkRepresentation.Contacts representations, in the case of the surface framework
0..* To: AbstractSurfaceFrameworkContact during the sealing process.

Standard: v2.2 / Document: v1.0 / May 16, 2022 270


RESQML Technical Reference Guide v2. 2

11.2 AbstractSurfaceFrameworkRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/24/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Parent class for a sealed or non-sealed surface framework representation. Each one
instantiates a representation set representation.

The difference between the sealed and non-sealed frameworks is that, in the non-sealed case, we do not
have all of the contact representations, or we have all of the contacts but they are not all
sealed.

Associations
Association Notes
From:
AbstractSurfaceFrameworkRepresentation.ContactIde
ntity
0..* To: ContactIdentity
From:
AbstractSurfaceFrameworkRepresentation. To:
RepresentationSetRepresentation
From:
SealedSurfaceFrameworkRepresentation. To:
AbstractSurfaceFrameworkRepresentation
From:
NonSealedSurfaceFrameworkRepresentation.
To: AbstractSurfaceFrameworkRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 271


RESQML Technical Reference Guide v2. 2

11.3 AbstractSurfaceRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 12/2/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: Parent class of structural surface representations, which can be bounded by an outer ring
and has inner rings. These surfaces may consist of one or more patches.

Attributes
Name Type Notes
SurfaceRole SurfaceRole

Associations
Association Notes
From:
AbstractSurfaceRepresentation.Boundaries
0..* To: PatchBoundaries
From: AbstractSurfaceRepresentation.
To: AbstractRepresentation
From: Grid2dRepresentation. To:
AbstractSurfaceRepresentation
From: TriangulatedSetRepresentation.
To: AbstractSurfaceRepresentation
From: PlaneSetRepresentation. To:
AbstractSurfaceRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 272


RESQML Technical Reference Guide v2. 2

11.4 ContactIdentity
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/12/2014 Last modified:10/1/2021 Status: Approved Author: philippe
Notes: Indicates identity between two (or more) contacts. For possible types of identities, see
IdentityKind.

Attributes
Name Type Notes
The contact representations that share
ContactIndices AbstractIntegerArray common identity as specified by their
indices.
Indicates which nodes (identified by their
common index in all contact
representations) of the contact
IdenticalNodeIndices AbstractIntegerArray representations are identical.
If this list is not present, then it indicates
that all nodes in each representation are
identical, on an element by element level.
The kind of contact identity. Must be one
IdentityKind IdentityKind
of the enumerations in IdentityKind.

Associations
Association Notes
From:
AbstractSurfaceFrameworkRepresentation.ContactIde
ntity
0..* To: ContactIdentity

Standard: v2.2 / Document: v1.0 / May 16, 2022 273


RESQML Technical Reference Guide v2. 2

11.5 ContactPatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/21/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: A subset of topological elements of an existing contact representation part (sealed or
non-sealed contact).

Attributes
Name Type Notes
Identifies a representation by its index, in
RepresentationIndex NonNegativeLong the list of representations contained in the
organization.
The ordered list of nodes (identified by
their global index) in the supporting
SupportingRepresentationNodes AbstractIntegerArray
representation, which constitutes the
contact patch.

Associations
Association Notes
From: SealedContact.Patches
2..* To: ContactPatch
From: NonSealedContact.Patches
0..* To: ContactPatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 274


RESQML Technical Reference Guide v2. 2

11.6 ContactReference
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/14/2014 Last modified:7/6/2021 Status: Proposed Author: philippe
Notes: Used when the contact already exists as a top-level element representation.

Associations
Association Notes
From: ContactReference. To:
AbstractSurfaceFrameworkContact
From: ContactReference.Representation
To: AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 275


RESQML Technical Reference Guide v2. 2

11.7 EdgePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/1/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Describes edges that are not linked to any other edge. Because edges do not have
indices, a consecutive pair of nodes is used to identify each edge.

The split edges dataset is a set of nodes (2 nodes per edge). Each patch has a set of 2 nodes.

Attributes
Name Type Notes
An array of split edges to define patches.
It points to an HDF5 dataset, which must
SplitEdges AbstractIntegerArray
be a 2D array of non-negative integers
with dimensions 2 x numSplitEdges.

Associations
Association Notes
From: TrianglePatch.SplitEdgePatch
0..* To: EdgePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 276


RESQML Technical Reference Guide v2. 2

11.8 LineRole
Type: Enumeration Stereotype:
Detail: Created: 5/17/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Indicates the various roles that a polyline topology can have in a representation.

Attributes
Name Type Notes
Usually used to represent fault lineaments
on horizons.
fault center line External Reference These lines can represent nonsealed
contact interpretation parts defined by a
horizon/fault intersection.
Used to represent several ordered points
of interest on surfaces (commonly
pick External Reference
sections, lines or even geological
surfaces) on which seismic is visible.
Closed polyline that delineates a hole in a
inner ring
surface patch.
Closed polyline that delineates the
outer ring
extension of a surface patch.
Polyline that is used to represent a well
trajectory
trajectory representation.
Line corresponding to a digitalization along
interpretation line
an earth model section.
Used to represent nonsealed contact
contact interpretation parts defined by a
horizon/fault intersection.
Used to represent nonsealed contact
depositional line interpretation parts defined by a
horizon/horizon intersection.
Used to represent nonsealed contact
erosion line interpretation parts defined by a
horizon/horizon intersection.
Used to obtain sets of 3D x, y, z points to
contour
represent any boundary interpretation.
Used to represent the pillars of a column-
pillar
layer volumic grid.
break line
A polyline representing the isobath of the
structural closure
structure's spill point
culture

Associations
Association Notes
From: LineRoleExt. To: LineRole

Standard: v2.2 / Document: v1.0 / May 16, 2022 277


RESQML Technical Reference Guide v2. 2

11.9 LineRoleExt
Type: Class Stereotype: «XSDunion»
Detail: Created: 8/12/2021 Last modified:8/12/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: LineRoleExt. To:
EnumExtensionPattern
From: LineRoleExt. To: LineRole

Standard: v2.2 / Document: v1.0 / May 16, 2022 278


RESQML Technical Reference Guide v2. 2

11.10 NonSealedContact
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/24/2014 Last modified:7/6/2021 Status: Approved Author: philippe
Notes: Defines a non-sealed contact representation, meaning that this contact representation is
defined by a geometry.

Associations
Association Notes
From: NonSealedContact.Patches
0..* To: ContactPatch
From: NonSealedContact.Geometry
0..1 To: AbstractGeometry
From: NonSealedContact. To:
AbstractSurfaceFrameworkContact

Standard: v2.2 / Document: v1.0 / May 16, 2022 279


RESQML Technical Reference Guide v2. 2

11.11 NonSealedSurfaceFrameworkRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/24/2014 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: A collection of contact representations parts, which are a list of contact patches with no
identity. This collection of contact representations is completed by a set of
representations gathered at the representation set representation level.

Associations
Association Notes
From:
NonSealedSurfaceFrameworkRepresentation.
To: AbstractSurfaceFrameworkRepresentation
From: Can contain sealed or non-sealed contact
NonSealedSurfaceFrameworkRepresentation.Contacts representations, in the case of the surface framework
0..* To: AbstractSurfaceFrameworkContact during the sealing process.

Standard: v2.2 / Document: v1.0 / May 16, 2022 280


RESQML Technical Reference Guide v2. 2

11.12 PatchBoundaries
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/5/2013 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: Defines the boundaries of an indexed patch. These boundaries are outer and inner rings.

Attributes
Name Type Notes
The XML index of the referenced patch
ReferencedPatch NonNegativeLong
inside this representation.

Associations
Association Notes
From: PatchBoundaries.OuterRing OuterRing defines the extension of a representation
0..1 To: AbstractRepresentation patch. Inside the ring, the patch is defined, outside it is
not.

The associated representation is used to limit the


extension. The patch is limited by the contact between
the patch and the associated representation.
From: PatchBoundaries.InnerRing A hole inside a representation patch. Inside the ring,
0..* To: AbstractRepresentation the representation patch is not defined, outside it is.

The associated representations are used to define the


holes. The holes occur inside the contact between the
patch and the associated representations.
From:
AbstractSurfaceRepresentation.Boundaries
0..* To: PatchBoundaries

Standard: v2.2 / Document: v1.0 / May 16, 2022 281


RESQML Technical Reference Guide v2. 2

11.13 PlaneSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Defines a plane representation, which can be made up of multiple patches. Commonly
represented features are fluid contacts or frontiers. Common geometries of this
representation are titled or horizontal planes.

BUSINESS RULE: If the plane representation is made up of multiple patches, then you must specify the
outer rings for each plane patch.

Associations
Association Notes
From: PlaneSetRepresentation. To:
AbstractSurfaceRepresentation
From: PlaneSetRepresentation.Planes
1..* To: AbstractPlaneGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 282


RESQML Technical Reference Guide v2. 2

11.14 PointSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: A representation that consists of one or more node patches. Each node patch is an array
of XYZ coordinates for the 3D points. There is no implied link age between the multiple
patches.

Associations
Association Notes
From: PointSetRepresentation. To:
AbstractRepresentation
From:
PointSetRepresentation.NodePatchGeometry
1..* To: PointGeometry

Standard: v2.2 / Document: v1.0 / May 16, 2022 283


RESQML Technical Reference Guide v2. 2

11.15 PolylineRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: A representation made up of a single polyline or "polygonal chain", which may be closed
or not.

Definition from Wikipedia (http://en.wikipedia.org/wiki/Piecewise_linear_curve):

A polygonal chain, polygonal curve, polygonal path, or piecewise linear curve, is a connected series of
line segments. More formally, a polygonal chain P is a curve specified by a sequence of
points \scriptstyle(A_1, A_2, \dots, A_n) called its vertices so that the curve consists of
the line segments connecting the consecutive vertices.

In computer graphics a polygonal chain is called a polyline and is often used to approximate curved
paths.

BUSINESS RULE: To record a polyline the writer software must give the values of the geometry of each
node in an order corresponding to the logical series of segments (edges). The geometry
of a polyline must be a 1D array of points.

A simple polygonal chain is one in which only consecutive (or the first and the last) segments intersect
and only at their endpoints.

A closed polygonal chain (isClosed=True) is one in which the first vertex coincides with the last one, or
the first and the last vertices are connected by a line segment.

Attributes
Name Type Notes
IsClosed boolean
LineRole LineRoleExt

Associations
Association Notes
From:
PolylineRepresentation.NodePatchGeometry
1 To: PointGeometry
From: PolylineRepresentation. To:
AbstractRepresentation
From:
Seismic2dPostStackRepresentation.SeismicLineRepre
sentation
To: PolylineRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 284


RESQML Technical Reference Guide v2. 2

11.16 PolylineSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:3/24/2020 Status: Approved Author: deny /JFR
Notes: A representation made up of a set of polylines or a set of polygonal chains (for more
information, see PolylineRepresentation).

For compactness, it is organized by line patch as a unique polyline set patch.

If allPolylineClosed = True, all the polylines are connected between the first and the last point.

Its geometry is a 1D array of points, corresponding to the concatenation of the points of all polyline points.

Attributes
Name Type Notes
LineRole LineRoleExt

Associations
Association Notes
From: PolylineSetRepresentation.LinePatch
1..* To: PolylineSetPatch
From: PolylineSetRepresentation. To:
AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 285


RESQML Technical Reference Guide v2. 2

11.17 SealedContact
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/21/2012 Last modified:10/1/2021 Status: Approved Author: philippe
Notes: Sealed contact elements that indicate that 2 or more contact patches are partially or
totally colocated or equivalent. For possible types of identity, see IdentityKind.

Attributes
Name Type Notes
Indicates which nodes (identified by their
common index in all contact patches) of
the contact patches are identical.
IdenticalNodeIndices AbstractIntegerArray
If this list is not present, then it indicates
that all nodes in each representation are
identical, on an element-by-element level.
Must be one of the enumerations in
IdentityKind IdentityKind
IdentityKind.

Associations
Association Notes
From: SealedContact.Patches
2..* To: ContactPatch
From: SealedContact. To:
AbstractSurfaceFrameworkContact
From:
SealedSurfaceFrameworkRepresentation.Contacts
0..* To: SealedContact

Standard: v2.2 / Document: v1.0 / May 16, 2022 286


RESQML Technical Reference Guide v2. 2

11.18 SealedSurfaceFrameworkRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/27/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: A collection of contact representations parts, which are a list of contact patches and their
identities. This collection of contact representations is completed by a set of
representations gathered at the representation set representation level.

Associations
Association Notes
From:
SealedSurfaceFrameworkRepresentation. To:
AbstractSurfaceFrameworkRepresentation
From:
SealedSurfaceFrameworkRepresentation.Contacts
0..* To: SealedContact
From: Identifies the sealed structural framework, which must
SealedVolumeFrameworkRepresentation.BasedOn integrate all the necessary line contacts for the sealed
1 To: SealedSurfaceFrameworkRepresentation volume framework.

Standard: v2.2 / Document: v1.0 / May 16, 2022 287


RESQML Technical Reference Guide v2. 2

11.19 SealedVolumeFrameworkRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/27/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: A strict boundary representation (BREP), which represents the volume region by
assembling together shells.

BUSINESS RULE: The sealed structural framework must be part of the same earth model as this sealed
volume framework.

Associations
Association Notes
From: Identifies the sealed structural framework, which must
SealedVolumeFrameworkRepresentation.BasedOn integrate all the necessary line contacts for the sealed
1 To: SealedSurfaceFrameworkRepresentation volume framework.
From:
SealedVolumeFrameworkRepresentation. To:
RepresentationSetRepresentation
From:
SealedVolumeFrameworkRepresentation.Regions
1..* To: VolumeRegion

Standard: v2.2 / Document: v1.0 / May 16, 2022 288


RESQML Technical Reference Guide v2. 2

11.20 SurfaceRole
Type: Enumeration Stereotype:
Detail: Created: 5/17/2012 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Indicates the various roles that a surface topology can have.

Attributes
Name Type Notes
map Representation support for properties.
Representation support for 3D points
pick
picked in 2D or 3D.

Standard: v2.2 / Document: v1.0 / May 16, 2022 289


RESQML Technical Reference Guide v2. 2

11.21 TrianglePatch
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/1/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Patch made of triangles, where the number of triangles is given by the patch count.
BUSINESS RULE: Within a patch, all the triangles must be contiguous.

The patch contains:


• Number of nodes within the triangulation and their locations.
• 2D array describing the topology of the triangles.

Two triangles that are connected may be in different patches.

Attributes
Name Type Notes
NodeCount NonNegativeLong
The triangles are a 2D array of non-
Triangles AbstractIntegerArray negative integers with the dimensions 3 x
numTriangles.

Associations
Association Notes
From: TrianglePatch.SplitEdgePatch
0..* To: EdgePatch
From: TrianglePatch.Geometry
To: PointGeometry
From:
TriangulatedSetRepresentation.TrianglePatch
1..* To: TrianglePatch

Standard: v2.2 / Document: v1.0 / May 16, 2022 290


RESQML Technical Reference Guide v2. 2

11.22 TriangulatedSetRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/14/2013 Last modified:11/1/2016 Status: Approved Author: deny /JFR
Notes: A representation based on set of triangulated mesh patches, which gets its geometry
from a 1D array of points.

BUSINESS RULE: The orientation of all the triangles of this representation must be consistent.

Associations
Association Notes
From:
TriangulatedSetRepresentation.TrianglePatch
1..* To: TrianglePatch
From: TriangulatedSetRepresentation.
To: AbstractSurfaceRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 291


RESQML Technical Reference Guide v2. 2

11.23 VolumeRegion
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/27/2013 Last modified:9/29/2021 Status: Approved Author: deny
Notes: The volume within a shell.

Associations
Association Notes
From: VolumeRegion.Represents
To: GeologicUnitInterpretation
From: VolumeRegion.InternalShells
0..* To: VolumeShell
From: VolumeRegion.ExternalShell
1 To: VolumeShell
From:
SealedVolumeFrameworkRepresentation.Regions
1..* To: VolumeRegion

Standard: v2.2 / Document: v1.0 / May 16, 2022 292


RESQML Technical Reference Guide v2. 2

11.24 VolumeShell
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/27/2013 Last modified:9/29/2021 Status: Approved Author: deny
Notes: The shell or envelope of a geologic unit. It is a collection of macro faces. Each macro
face is defined by a triplet of values, each value being at the same index in the three
arrays contained in this class.

Attributes
Name Type Notes
Each index identifies the surface
PatchIndicesOfRepresentation IntegerExternalArray representation patch describing the macro
face.
Each index identifies the macro face
surface representation by its index in the
RepresentationIndices IntegerExternalArray
list of representations contained in the
organization.
Each index identifies the side of the macro
SideIsPlus BooleanExternalArray
face.

Associations
Association Notes
From: VolumeRegion.InternalShells
0..* To: VolumeShell
From: VolumeRegion.ExternalShell
1 To: VolumeShell

Standard: v2.2 / Document: v1.0 / May 16, 2022 293


RESQML Technical Reference Guide v2. 2

12 Wells
Package: xsd_schemas

Notes: This package contains classes for features, interpretations, representations and related
objects used to define and exchange well data in RESQML.

AbstractObject
AbstractFeatureInterpretation
«XSDcomplexType,XSDtopLevelElement» AbstractFeatureInterpretation
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
Interpretations::AbstractOrganizationInterpretation +Organization «XSDcomplex... «XSDcomplexType,XSDtopLev...
0..1 MarkerInterval «XSDelement» Interpretations::
+Interpretation
+ RealizationIndex: PositiveLong [0..1] BoundaryFeatureInterpretation
+ RepresentedObject: DataObjectReference [0..1] 0..1
1..* +MarkerInterval
«XSDelement»
+Interpretation 0..*
+ OlderPossibleAge: long [0..1]
AbstractFeatureInterpretation + YoungerPossibleAge: long [0..1]
«XSDcomplexType,XSDtopLevelElement» «XSDcomplexType,XSDtopLevel...
Interpretations::GeologicUnitInterpretation WellboreIntervalSet
«XSDelement»
+ DepositionalEnvironment: DepositionalEnvironmentKindExt [0..1]
AbstractObject
+ DepositionalFacies: DepositionalFaciesKindExt [0..1]
+ GeologicUnit3dShape: Shape3dExt [0..1] «XSDcomplexType,XSDtop...
+ GeologicUnitComposition: LithologyKindExt [0..1] +IntervalBoundaries 0..* WellboreMarkers::
+ GeologicUnitMaterialEmplacement: GeologicUnitMaterialEmplacement [0..1] WellboreMarkerSet
«XSDcomplexType»
MarkerBoundary «XSDelement»
string + MarkerSetInterval: MdInterval
«XSDelement»
«enumeration» + FluidContact: FluidContact [0..1]
Interpretations:: string + FluidMarker: FluidMarker [0..1] +FormationMarker
FluidContact «enumeration» + GeologicBoundaryKind: GeologicBoundaryKind «byValue» 0..*
string
free water contact FluidMarker + Marker: DataObjectReference [0..1]
«enumeration» AbstractObject
gas oil contact + MarkerSet: DataObjectReference [0..1]
gas down to GeologicBoundaryKind «XSDcomplexType,XSDtopLevelElement»
gas water contact + Qualifier: string [0..1]
gas up to WellboreMarkers::WellboreMarker
seal oil down to fault
water oil contact oil up to geobody «XSDelement»
water down to horizon + ChronostratigraphicTop: GeochronologicalUnit [0..1]
water up to + DipAngle: PlaneAngleMeasure [0..1]
+ DipDirection: PlaneAngleMeasure [0..1]
+ DipDirectionRef: NorthReferenceKind [0..1]
+ GeologicAge: TimeMeasureExt [0..1]
+ GeologicUnitInterpretation: DataObjectReference [0..1]
+ HighConfidenceMdInterval: MdInterval [0..1]
+ LithostratigraphicTop: LithostratigraphicUnit [0..1]
+ MarkerQualifier: MarkerQualifierExt [0..1]
+ Md: MeasuredDepth
«XSDcomplexType» «XSDcomplexType» + ObservationNumber: long [0..1]
StratigraphicIntervalBoundary FluidIntervalBoundary + PointOfInterest: WellborePointOfInterestExt [0..1]
+ StratigraphyKind: StratigraphyKindExt [0..1]
«XSDelement» + StratigraphyKindQualifier: StratigraphyKindQualifierExt [0..1]
+ ContactConformableAbove: boolean [0..1] + Tvd: AbstractVerticalDepth [0..1]
+ ContactConformableBelow: boolean [0..1] + WellboreMarkerKind: WellboreMarkerKindExt [0..1]

Standard: v2.2 / Document: v1.0 / May 16, 2022 294


RESQML Technical Reference Guide v2. 2

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]

«XSDcomplexType,XSDtopLevelElement»
WellboreTrajectoryRepresentation
«XSDcomplexType,XSDtopLevelElement»
WellboreFrameRepresentation «XSDelement»
+Trajectory + CustomUnitDictionary: DataObjectReference [0..1]
«XSDelement»
+ MdDomain: MdDomain [0..1]
+ NodeCount: PositiveLong
+ MdInterval: MdInterval
+ NodeMd: AbstractFloatingPointArray
+ WitsmlTrajectory: DataObjectReference [0..1]
+ WitsmlLog: DataObjectReference [0..1]

«XSDcomplexType,XSDtopLevelElement»
SeismicWellboreFrameRepresentation
«XSDcomplexType»
«XSDelement» CorrectionInformation
+ NodeTimeValues: AbstractFloatingPointArray +CorrectionInformation
«XSDattribute»
+ SeismicReferenceDatum: double 0..1 + CorrectionAverageVelocity: double [0..1]
+ WeatheringVelocity: double
+ CorrectionTimeShift: double [0..1]

+TvdInformation 0..1

«XSDcomplexType»
+LocalTime3dCrs
TvdInformation
AbstractCompoundCrs
«XSDelement»
«XSDcomplexType,XSDtopLevelElem... +LocalDepth3dCrs + NodeTvdValues: AbstractFloatingPointArray
CRS::LocalEngineeringCompoundCrs + TvdDatum: double
+ TvdReference: AbstractReferencePoint
«XSDelement»
+ OriginVerticalCoordinate: double

Standard: v2.2 / Document: v1.0 / May 16, 2022 295


RESQML Technical Reference Guide v2. 2

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]

AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Datum::AbstractReferencePoint
AbstractGeometry «XSDelement»
«XSDcomplexType» +Geometry + Kind: ReferencePointKindExt [0..1]
Geometry::AbstractParametricLineGeometry + OSDUReferencePointIntegration: OSDUReferencePointIntegration [0..1]
0..1

«XSDcomplexType,XSDtopLevelElement»
«XSDcomplexType,XSDtopLevelElement» WellboreTrajectoryRepresentation
WellboreFrameRepresentation «XSDelement»
«XSDelement»
+Trajectory + CustomUnitDictionary: DataObjectReference [0..1]
+ NodeCount: PositiveLong «XSDcomplexType» + MdDomain: MdDomain [0..1]
+IntervalStratigraphicUnits + MdInterval: MdInterval string
+ NodeMd: AbstractFloatingPointArray Grids::IntervalStratigraphicUnits
+ WitsmlLog: DataObjectReference [0..1] + WitsmlTrajectory: DataObjectReference [0..1] «enumeration»
0..*
«XSDelement» +ParentTrajectory MdDomain
+ UnitIndices:
0..1 JaggedArray
driller
logger
+IntervalStratigraphicUnits

«XSDcomplexType,XSDtopLevelElem...
BlockedWellboreRepresentation

+IntervalGridCells

«XSDcomplexType» +ParentIntersection 0..1


Grids::IntervalGridCells
«XSDcomplexType»
«XSDelement» WellboreTrajectoryParentIntersection
+ CellCount: PositiveLong
+ CellIndices: AbstractIntegerArray «XSDelement»
+ GridIndices: AbstractIntegerArray + KickoffMd: double
+ LocalFacePairPerCellIndices: AbstractIntegerArray + ParentMd: double [0..1]

+Grid 1..*

«XSDcomplexType,XSDtopLevelElement»
Grids::AbstractGridRepresentation

+CellFluidPhaseUnits 0..1

«XSDcomplexType»
0..1 Grids::CellFluidPhaseUnits

+CellFluidPhaseUnits «XSDelement»
+ PhaseUnitIndices: JaggedArray

Standard: v2.2 / Document: v1.0 / May 16, 2022 296


RESQML Technical Reference Guide v2. 2

12.1 BlockedWellboreRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/7/2013 Last modified:11/1/2016 Status: Approved Author: philippe /JFR
Notes: The information that allows you to locate, on one or several grids (existing or planned),
the intersection of volume (cells) and surface (faces) elements with a wellbore trajectory
(existing or planned).

Associations
Association Notes
From: BlockedWellboreRepresentation.
To: WellboreFrameRepresentation
From: Reference to the intersected grid.
BlockedWellboreRepresentation.IntervalGridCells
To: IntervalGridCells

Standard: v2.2 / Document: v1.0 / May 16, 2022 297


RESQML Technical Reference Guide v2. 2

12.2 CorrectionInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/1/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: Occurs only if a correction has been applied on the survey wellbore.

Attributes
Name Type Notes
The UOM is composed by:
UOM of the LocalDepth3dCrs of the
associated wellbore frame trajectory /
CorrectionAverageV elocity double
UOM of the associated LocalTime3dCrs.

If not used, enter zero.


The UOM is the one specified in the
LocalTime3dCrs.
CorrectionTimeShift double
If not used, enter zero.

Associations
Association Notes
From:
SeismicWellboreFrameRepresentation.CorrectionInfor
mation
0..1 To: CorrectionInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 298


RESQML Technical Reference Guide v2. 2

12.3 FluidIntervalBoundary
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/2/2021 Last modified:12/3/2021 Status: Proposed Author: Jay Hollingsworth
Notes: This represents a boundary between two intervals where at least one side of the
boundary is a fluid.

Associations
Association Notes
From: FluidIntervalBoundary. To:
MarkerBoundary

Standard: v2.2 / Document: v1.0 / May 16, 2022 299


RESQML Technical Reference Guide v2. 2

12.4 FluidMarker
Type: Enumeration Stereotype:
Detail: Created: 4/30/2014 Last modified:7/6/2021 Status: Proposed Author: philippe
Notes: The various fluids a well mark er can indicate.

Attributes
Name Type Notes
gas down to
gas up to
oil down to
oil up to
water down to
water up to

Associations
Association Notes
From: MarkerBoundary. To: FluidMarker

Standard: v2.2 / Document: v1.0 / May 16, 2022 300


RESQML Technical Reference Guide v2. 2

12.5 GeologicBoundaryKind
Type: Enumeration Stereotype:
Detail: Created: 4/25/2013 Last modified:7/6/2021 Status: Proposed Author: philippe
Notes: The various geologic boundaries a well mark er can indicate.

Attributes
Name Type Notes
fault
geobody
horizon

Associations
Association Notes
From: MarkerBoundary. To:
GeologicBoundaryKind

Standard: v2.2 / Document: v1.0 / May 16, 2022 301


RESQML Technical Reference Guide v2. 2

12.6 MarkerBoundary
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/2/2021 Last modified:12/3/2021 Status: Proposed Author: Jay Hollingsworth
Notes: Represent interval limits associated with Witsml:WellMark ers.

Attributes
Name Type Notes
FluidContact FluidContact
FluidMarker FluidMarker
GeologicBoundaryKind GeologicBoundaryKind
This is a DataObjectReference to a
Marker DataObjectReference
WITSML WellboreMarker
This is a DataObjectReference to a
MarkerSet DataObjectReference
WITSML WellboreMarkerSet
Qualifier string

Associations
Association Notes
From: MarkerBoundary. To:
FluidContact
From: MarkerBoundary. To:
WellboreMarkerSet
From: MarkerBoundary.Interpretation
0..1 To: BoundaryFeatureInterpretation
From: MarkerBoundary. To: FluidMarker
From: MarkerBoundary. To:
WellboreMarker
From: MarkerBoundary. To:
GeologicBoundaryKind
From: FluidIntervalBoundary. To:
MarkerBoundary
From: WellboreIntervalSet.IntervalBoundaries An array of (0..*) MarkerBoundary (see below) defining
0..* To: MarkerBoundary the intervals, an array of N boundaries, will create N+1
intervals.
From: StratigraphicIntervalBoundary. To:
MarkerBoundary

Standard: v2.2 / Document: v1.0 / May 16, 2022 302


RESQML Technical Reference Guide v2. 2

12.7 MarkerInterval
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/7/2021 Last modified:12/3/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: MarkerInterval.Interpretation
0..* To: GeologicUnitInterpretation
From: MarkerInterval.Organization
0..1 To: AbstractOrganizationInterpretation
From: WellboreIntervalSet.MarkerInterval
1..* To: MarkerInterval

Standard: v2.2 / Document: v1.0 / May 16, 2022 303


RESQML Technical Reference Guide v2. 2

12.8 MdDomain
Type: Enumeration Stereotype:
Detail: Created: 4/25/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: Different types of measured depths.

Attributes
Name Type Notes
The original depths recorded while drilling
driller
a well or LWD or MWD.
Depths recorded when logging a well,
logger which are in general considered to be
more accurate than driller's depth.

Associations
Association Notes
From: WellboreTrajectoryRepresentation.
To: MdDomain

Standard: v2.2 / Document: v1.0 / May 16, 2022 304


RESQML Technical Reference Guide v2. 2

12.9 SeismicWellboreFrameRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/1/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: The interpretation of this representation must be a WellboreInterpretation.

The acquisition information such as the time kind (e.g., TWT vs OWT for example) or
survey acquisition type (e.g., checkshot vs VSP) should be captured by the associated
acquisition activity.

Attributes
Name Type Notes
BUSINESS RULE: Count must be equal to
the inherited NodeCount.

The direction of the supporting axis is


given by the LocalTime3dCrs itself. It is
necessary to get this information to know
NodeTimeValues AbstractFloatingPointArray what means positive or negative values.

The values are given with respect to the


SeismicReferenceDatum.

The UOM is the one specified in the


LocalTime3dCrs.
This is the Z value where the seismic time
is equal to zero for this survey wellbore
frame.

The direction of the supporting axis is


given by the LocalTime3dCrs of the
associated wellbore trajectory. It is
necessary to get the information to know
SeismicReferenceDatum double what means a positive or a negative value.

The value is given with respect to the


ZOffset of the LocalDepth3dCrs of the
associated wellbore trajectory.

The UOM is the one specified in the


LocalDepth3dCrs of the associated
wellbore trajectory.
The UOM is composed by:
UOM of the LocalDepth3dCrs of the
associated wellbore frame trajectory /
WeatheringVelocity double UOM of the associated LocalTime3dCrs

Sometimes also called seismic velocity


replacement.

Associations

Standard: v2.2 / Document: v1.0 / May 16, 2022 305


RESQML Technical Reference Guide v2. 2

Association Notes
From:
SeismicWellboreFrameRepresentation.LocalTime3dCr
s
To: LocalEngineeringCompoundCrs
From:
SeismicWellboreFrameRepresentation.TvdInformation
0..1 To: TvdInformation
From: SeismicWellboreFrameRepresentation.
To: WellboreFrameRepresentation
From:
SeismicWellboreFrameRepresentation.CorrectionInfor
mation
0..1 To: CorrectionInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 306


RESQML Technical Reference Guide v2. 2

12.10 StratigraphicIntervalBoundary
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/2/2021 Last modified:12/3/2021 Status: Proposed Author: Jay Hollingsworth
Notes: This represents a stratigraphic boundary between two intervals.

Attributes
Name Type Notes
This is an optional boolean indicating that
the relationship between the boundary and
the unit above is conformable. It is typically
ContactConformableA bove boolean
used as a placeholder for the interpreter to
put some information before the
association with an organization is made.
This is an optional boolean indicating that
the relationship between the boundary and
the unit below is conformable. It is typically
ContactConformableB elow boolean
used as a placeholder for the interpreter to
put some information before the
association with an organization is made.

Associations
Association Notes
From: StratigraphicIntervalBoundary. To:
MarkerBoundary

Standard: v2.2 / Document: v1.0 / May 16, 2022 307


RESQML Technical Reference Guide v2. 2

12.11 TvdInformation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 7/1/2015 Last modified:11/1/2016 Status: Proposed Author: Philippe
Notes: Business rule:

Attributes
Name Type Notes
Count must be equal to count of nodes of
the associated wellbore frame.

The direction of the supporting axis is


given by the LocalDepth3dCrs itself. It is
necessary to get the information to know
what are positive or negative values.
NodeTvdValues AbstractFloatingPointArray
The values are given with respect to the
TvdDatum, not with respect to the ZOffest
of the LocalDepth3dCrs

The UOM is the one specified in the


LocalDepth3dCrs.
The direction of the supporting axis is
given by the LocalDepth3dCrs itself. It is
necessary to get the information to know
what is a positive or a negative value.
TvdDatum double
The value is given with respect to the
ZOffset of the LocalDepth3dCrs.

The UOM is the one specified in the


LocalDepth3dCrs.
TvdReference AbstractReferencePoint

Associations
Association Notes
From: TvdInformation.LocalDepth3dCrs
To: LocalEngineeringCompoundCrs
From:
SeismicWellboreFrameRepresentation.TvdInformation
0..1 To: TvdInformation

Standard: v2.2 / Document: v1.0 / May 16, 2022 308


RESQML Technical Reference Guide v2. 2

12.12 WellboreFeature
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 11/28/2012 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: May refer to one of these:
wellbore. A unique, oriented path from the bottom of a drilled borehole to the surface of the earth. The
path must not overlap or cross itself.

borehole. A hole excavated in the earth as a result of drilling or boring operations. The borehole may
represent the hole of an entire wellbore (when no sidetracks are present), or a sidetrack
extension. A borehole extends from an originating point (the surface location for the initial
borehole or kickoff point for sidetracks) to a terminating (bottomhole) point.

sidetrack. A borehole that originates in another borehole as opposed to originating at the surface.

Associations
Association Notes
From: WellboreFeature.WitsmlWellbore Indicates which WITSML wellbore this borehole
0..1 To: WitsmlWellWellbore belongs to.
From: WellboreFeature. To:
AbstractTechnicalFeature

Standard: v2.2 / Document: v1.0 / May 16, 2022 309


RESQML Technical Reference Guide v2. 2

12.13 WellboreFrameRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/7/2012 Last modified:12/8/2021 Status: Approved Author: deny / JFR
Notes: Representation of a wellbore that is organized along a wellbore trajectory by its MD
values. RESQML uses MD values to associate properties on points and to organize
association of properties on intervals between MD points.

For this particular representation a WITSML v2 Wellbore is considered as a RESQML Technical Feature,
meaning that the WITSML v2 Wellbore can be used as the represented data object for
this representation.

Attributes
Name Type Notes
NodeCount PositiveLong Number of nodes. Must be positive.
MD values for each node.
BUSINESS RULE: MD values and UOM
NodeMd AbstractFloatingPointArray
must be consistent with the trajectory
representation.
The reference to the equivalent WITSML
WitsmlLog DataObjectReference
well log.

Associations
Association Notes
From: WellboreFrameRepresentation.
To: AbstractRepresentation
From: WellboreFrameRepresentation.Trajectory
To: WellboreTrajectoryRepresentation
From:
WellboreFrameRepresentation.IntervalStratigraphicUnit
s
0..* To: IntervalStratigraphicUnits
From:
WellboreFrameRepresentation.CellFluidPhaseUnits
0..1 To: CellFluidPhaseUnits
From: SeismicWellboreFrameRepresentation.
To: WellboreFrameRepresentation
From: BlockedWellboreRepresentation.
To: WellboreFrameRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 310


RESQML Technical Reference Guide v2. 2

12.14 WellboreInterpretation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/21/2013 Last modified:11/1/2016 Status: Approved Author: deny
Notes: Contains the data describing an opinion of a borehole. This interpretation is relative to
one particular well trajectory.

Attributes
Name Type Notes
Used to indicate that this wellbore has
been, or is being, drilled, as opposed to
planned wells. One wellbore feature may
have multiple wellbore interpretations.
IsDrilled boolean
• For updated drilled trajectories, use
IsDrilled=TRUE.
• For planned trajectories, use
IsDrilled=FALSE used.

Associations
Association Notes
From: WellboreInterpretation. To:
AbstractFeatureInterpretation
From: ProxyConnector. To:
WellboreInterpretation

Standard: v2.2 / Document: v1.0 / May 16, 2022 311


RESQML Technical Reference Guide v2. 2

12.15 WellboreIntervalSet
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 3/2/2021 Last modified:12/3/2021 Status: Proposed Author: Jay Hollingsworth
Notes:

Associations
Association Notes
From: WellboreIntervalSet.IntervalBoundaries An array of (0..*) MarkerBoundary (see below) defining
0..* To: MarkerBoundary the intervals, an array of N boundaries, will create N+1
intervals.
From: WellboreIntervalSet.MarkerInterval
1..* To: MarkerInterval
From: WellboreIntervalSet. To:
AbstractRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 312


RESQML Technical Reference Guide v2. 2

12.16 WellboreTrajectoryParentIntersection
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 8/2/2013 Last modified:11/1/2016 Status: Approved Author: philippe
Notes: For a wellbore trajectory in a multi-lateral well, indicates the MD of the k ick off point where
the trajectory begins and the corresponding MD of the parent trajectory.

Attributes
Name Type Notes
KickoffMd is the measured depth for the
KickoffMd double start of the child trajectory, as defined
within the child.
If the kickoff MD in the child (KickoffMd) is
different from the kickoff MD in the parent
ParentMd double (ParentMd), then specify the ParentMD
here. If not specified, then these two MD's
are implied to be identical.

Associations
Association Notes
From: Indicates the parent trajectory of the wellbore
WellboreTrajectoryParentIntersection.ParentTrajectory trajectory.
To: WellboreTrajectoryRepresentation
From:
WellboreTrajectoryRepresentation.ParentIntersection
0..1 To: WellboreTrajectoryParentIntersection

Standard: v2.2 / Document: v1.0 / May 16, 2022 313


RESQML Technical Reference Guide v2. 2

12.17 WellboreTrajectoryRepresentation
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 6/7/2012 Last modified:12/8/2021 Status: Approved Author: deny
Notes: Representation of a wellbore trajectory.

For this particular representation a WITSML v2 Wellbore is considered as a RESQML Technical Feature,
meaning that the WITSML v2 Wellbore can be used as the represented data object for
this representation.

Attributes
Name Type Notes
If the unit of measure of the MdInterval is
an extended value, this is a reference to
CustomUnitDictionary DataObjectReference
an object containing the custom unit
dictionary.
Indicates if the MD is either in “driller”
MdDomain MdDomain
domain or “logger” domain.
The interval which represents the
minimum and maximum values of
measured depth for the trajectory.

BUSINESS RULE: For purposes of the


MdInterval MdInterval
trajectory the MdDatum within the
MdInterval is mandatory.

BUSINESS RULE: The MdMin must be


less than the MdMax within the MdInterval
Pointer to the WITSML trajectory that is
contained in the referenced wellbore. (For
information about WITSML well and
WitsmlTrajectory DataObjectReference
wellbore references, see the definition for
RESQML technical feature,
WellboreFeature).

Associations
Association Notes
From: WellboreTrajectoryRepresentation. 1..1
To: AbstractRepresentation
From:
WellboreTrajectoryRepresentation.ParentIntersection
0..1 To: WellboreTrajectoryParentIntersection
From: WellboreTrajectoryRepresentation.
To: MdDomain
From:
WellboreTrajectoryRepresentation.Geometry
0..1 To: AbstractParametricLineGeometry
From: WellboreTrajectoryRepresentation.
To: AbstractReferencePoint
From: Indicates the parent trajectory of the wellbore
WellboreTrajectoryParentIntersection.ParentTrajectory trajectory.
To: WellboreTrajectoryRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 314


RESQML Technical Reference Guide v2. 2

Association Notes
From: WellboreFrameRepresentation.Trajectory
To: WellboreTrajectoryRepresentation
From:
StreamlineWellbores.WellboreTrajectoryRepresentation
1..* To: WellboreTrajectoryRepresentation

Standard: v2.2 / Document: v1.0 / May 16, 2022 315


RESQML Technical Reference Guide v2. 2

12.18 WitsmlWellWellbore
Type: Class Stereotype: «XSDcomplexType»
Detail: Created: 2/7/2013 Last modified:8/22/2018 Status: Approved Author: philippe
Notes: Reference to the WITSML wellbore that this wellbore feature is based on.

Attributes
Name Type Notes
WitsmlWell DataObjectReference
WitsmlWellbore DataObjectReference

Associations
Association Notes
From: WellboreFeature.WitsmlWellbore Indicates which WITSML wellbore this borehole
0..1 To: WitsmlWellWellbore belongs to.

Standard: v2.2 / Document: v1.0 / May 16, 2022 316

You might also like