RESQML Technical Reference Guide v2.2 v1.0
RESQML Technical Reference Guide v2.2 v1.0
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.
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
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
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 resqmldoc folder). This XMI format can be imported by any UML data modeling tool.
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
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
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
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
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
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
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
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
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
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
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
«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
«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
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
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
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
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
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.
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
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
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
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.
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.
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
Associations
Association Notes
From: ParametricLineArray. To:
AbstractParametricLineArray
From:
ParametricLineArray.ParametricLineIntersections
0..1 To: ParametricLineIntersections
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
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.
Associations
Association Notes
From:
ParametricLineFromRepresentationLatticeArray.
To: AbstractParametricLineArray
From:
ParametricLineFromRepresentationLatticeArray.Supp
ortingRepresentation
To: AbstractRepresentation
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.
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.
Associations
Association Notes
From: ParametricLineGeometry. To:
AbstractParametricLineGeometry
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
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
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
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
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
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.
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.
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.
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.
Associations
Association Notes
From: Point3dParametricArray. To:
AbstractPoint3dArray
From: Point3dParametricArray.ParametricLines
To: AbstractParametricLineArray
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
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
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
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.
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
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
«XSDcomplexType»
HsvColor
+Hsv
«XSDelement»
+Hsv
1 + Alpha: double
1
+ Hue: double
+ Saturation: double
+ Title: string [0..1]
+ Value: double
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
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
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
Association Notes
From: GraphicalInformationForVolumes.
To:
AbstractGraphicalInformationForIndexableElement
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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.
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
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
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
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
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
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
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
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
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
«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]
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
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
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
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
«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
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]
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
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.
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
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.
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
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
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
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
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
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
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
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
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
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.
Associations
Association Notes
From:
CellFluidPhaseUnits.RockFluidOrganizationInterpretatio
n
To: RockFluidOrganizationInterpretation
From:
AbstractGridRepresentation.CellFluidP haseUnits
0..1 To: CellFluidPhaseUnits
From:
WellboreFrameRepresentation.CellFluidPhaseUnits
0..1 To: CellFluidPhaseUnits
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
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
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.
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.
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.
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
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.
Associations
Association Notes
From: ColumnLayerParentWindow. To:
AbstractParentWindow
From:
ColumnLayerParentWindow.ParentColumnLayerGridRe
presentation
To: AbstractColumnLayerGridRepresentation
From: ColumnLayerParentWindow.KRegrid
To: Regrid
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.
Associations
Association Notes
From:
AbstractColumnLayerGridGeometry.ColumnLayerSplit
CoordinateLines
0..1 To: ColumnLayerSplitCoordinateLines
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
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.
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.
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
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
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.
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
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
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
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.
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.
Associations
Association Notes
From:
GridConnectionSetRepresentation.ConnectionInterpret
ations
0..1 To: ConnectionInterpretations
From: GridConnectionSetRepresentation.Grid
1..* To: AbstractGridRepresentation
From: GridConnectionSetRepresentation.
To: AbstractRepresentation
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.
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
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.
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
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.
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
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.
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.
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
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.
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
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
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.
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
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
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
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.
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.
Associations
Association Notes
From: IjkGridRepresentation.KGaps
0..1 To: KGaps
From: ColumnLayerGpGrid.KGaps
0..1 To: KGaps
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
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
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.
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.
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
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
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.
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
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
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
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.
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.
Associations
Association Notes
From: UniformSubnodePatch. To:
SubnodePatch
From: VariableSubnodePatch. To:
SubnodePatch
From: ColumnSubnodePatch. To:
SubnodePatch
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
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
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
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.
Associations
Association Notes
From: IjkGpGridPatch.TruncationCellPatch
0..1 To: TruncationCellPatch
From:
AbstractTruncatedColumnLayerGridRepresentation.T
runcationCellPatch
To: TruncationCellPatch
From:
UnstructuredColumnLayerGpGridPatch. TruncationCell
Patch
0..1 To: TruncationCellPatch
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
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
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.
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
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.
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.
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
Association Notes
From:
UnstructuredColumnLayerGridRepre sentation.Geome
try
0..1 To: UnstructuredColumnLayerGridGeometry
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
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.
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
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
Association Notes
From: UnstructuredGpGridPatch.Geometry
0..1 To: UnstructuredGridGeometry
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
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
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
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
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
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..*
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
+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..*
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
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.
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
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
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
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 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.
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
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
Association Notes
From:
GeneticBoundaryBasedTimeInterval.ChronoTop
To: BoundaryFeatureInterpretation
From: FluidBoundaryInterpretation. To:
BoundaryFeatureInterpretation
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.
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
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
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
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.
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
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
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
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
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
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
Associations
Association Notes
From: DepositionalFaciesKindExt. To:
DepositionalFaciesKind
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
Association Notes
From: EarthModelInterpretation.Structure
0..* To: StructuralOrganizationInterpretation
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
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
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
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
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
Association Notes
From: AbstractProperty. To:
AbstractObject
From: AbstractProperty.TimeOrIntervalSeries
0..1 To: TimeOrIntervalSeries
From: PointsProperty. To: AbstractProperty
From: AbstractValuesProperty. To:
AbstractProperty
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
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
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
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
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
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
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
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
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
«XSDcomplexType»
ContactPatch
«XSDelement»
+ RepresentationIndex: NonNegativeLong
+ SupportingRepresentationNodes: 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
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
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.
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.
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.
Association Notes
From: GridConnectionSetRepresentation.
To: AbstractRepresentation
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
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
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.
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.
Associations
Association Notes
From: PolylineSetPatch.IntervalGridCells
0..1 To: IntervalGridCells
From: PolylineSetPatch.Geometry
To: PointGeometry
From: PolylineSetRepresentation.LinePatch
1..* To: PolylineSetPatch
Association Notes
From: StreamlinesRepresentation.Geometry
0..1 To: PolylineSetPatch
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
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
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
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.
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
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
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.
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
+LocalCrs +LocalCrs
AbstractCompoundCrs
«XSDcomplexType,XSDtopLevelElem...
CRS::LocalEngineeringCompoundCrs
«XSDelement»
+ OriginVerticalCoordinate: double
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
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.
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
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
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
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
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..
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.
Associations
Association Notes
From: Seismic2dPostStackRepresentation.
To: AbstractRepresentation
From:
Seismic2dPostStackRepresentation.LocalCrs
To: LocalEngineeringCompoundCrs
From:
Seismic2dPostStackRepresentation.SeismicLineRepre
sentation
To: PolylineRepresentation
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
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.
Attributes
Name Type Notes
This array must be two dimensions:
- Fastest Axis is inline.
- Slowest Axis is crossline.
Associations
Association Notes
From:
Seismic3dPostStackRepresentation.LocalCrs
To: LocalEngineeringCompoundCrs
From: Seismic3dPostStackRepresentation.
To: AbstractGridRepresentation
From:
Seismic3dPostStackRepresentation.SeismicLatticeRep
resentation
To: Grid2dRepresentation
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.
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
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
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
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.
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
AbstractObject
«XSDcomplexType,XSDtopLevelElement»
Representations::AbstractRepresentation
«XSDelement»
+ RealizationIndex: PositiveLong [0..1]
+ RepresentedObject: DataObjectReference [0..1]
«XSDcomplexType,XSDtopLevelElement»
Grids::AbstractGridRepresentation
+Grid 1..*
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
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
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
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.
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
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
Associations
Association Notes
From:
StreamlineWellbores.WellboreTrajectoryRepresentation
1..* To: WellboreTrajectoryRepresentation
From:
StreamlinesRepresentation.StreamlineWellbores
0..1 To: StreamlineWellbores
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..*
«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
«XSDcomplexType»
ContactPatch
«XSDelement»
+ RepresentationIndex: NonNegativeLong
+ SupportingRepresentationNodes: AbstractIntegerArray
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
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.
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
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
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
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
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
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
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
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
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
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.
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.
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
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
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.
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
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).
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
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
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.
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
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.
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.
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
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
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
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
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]
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
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
+Grid 1..*
«XSDcomplexType,XSDtopLevelElement»
Grids::AbstractGridRepresentation
+CellFluidPhaseUnits 0..1
«XSDcomplexType»
0..1 Grids::CellFluidPhaseUnits
+CellFluidPhaseUnits «XSDelement»
+ PhaseUnitIndices: JaggedArray
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
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.
Associations
Association Notes
From:
SeismicWellboreFrameRepresentation.CorrectionInfor
mation
0..1 To: CorrectionInformation
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
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
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
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
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
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
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.
Associations
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
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
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.
Associations
Association Notes
From: TvdInformation.LocalDepth3dCrs
To: LocalEngineeringCompoundCrs
From:
SeismicWellboreFrameRepresentation.TvdInformation
0..1 To: TvdInformation
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
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
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
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
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
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.
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
Association Notes
From: WellboreFrameRepresentation.Trajectory
To: WellboreTrajectoryRepresentation
From:
StreamlineWellbores.WellboreTrajectoryRepresentation
1..* To: WellboreTrajectoryRepresentation
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.