BoreholeIndex service documentation
Version: 1.1
Editors: Henning Lorenz (Uppsala University), Franck Chan Thaw (BRGM), Sylvain Grellet (BRGM)
Scope
The TCS GIM BoreholeIndex service documentation helps the end user to understand the BoreholeIndex model and explains how to use the view and download services.
The services
The TCS GIM BoreholeIndex is an implementation of the BoreholeIndex data model and contains discovery information for millions of boreholes. Thus, visualisation of the borehole instances is challanging and precise filtering of data before download/interaction indispensible. For this reason, two services were created:
-
The BoreholeView service for visualising the content of the service.
-
The BoreholeDownload service for data digestion and dereferencing.
BoreholeView service
The BoreholeView service is a Web Map Service (WMS) that follows the specifications of the Open Geospatial Consortium (OGC) standard WMS 1.3 (https://www.ogc.org/standard/wms/), which also is ISO 19128 standard (https://www.iso.org/standard/32546.html). As such, it can be used as part of the EPOS data portal but also interfaced directly.
The base address for the Borehole services is:
https://data.geoscience.earth/api/wxsBorehole
The capabilities document (GetCapabilities) for the WMS service is available at:
https://data.geoscience.earth/api/wxsBorehole?service=WMS&version=1.3.0&request=GetCapabilities&layers=epos-gsmlp:BoreholeView_Group
The BoreholeView service consists of three layers. Only one layer is visible at any zoom level, transitioning from "Cluster Group" to "Stacked Point" to "Purpose" when zooming in.
In small map scale, the "Cluster group" layer provides an overview over where boreholes are available.

At medium map scale, the "Stacked point" layer informs about boreholes by providing their location or the number of boreholes in a cluster where individual location cannot be resolved.

At large map scale, the "Purpose" layer displays individual boreholes with a symbol representing the purpose for which the borehole was drilled.

Query parameters of a straight BoreholeView WMS request include the coordinate reference system (crs), the image format (format), the image width and height, and the geographic bounding box (bbox), as in the example below:
https://data.geoscience.earth/api/wxsBorehole?service=WMS&version=1.3.0&request=GetMap&layers=epos-gsmlp:BoreholeView_Group&crs=EPSG:4326&format=image/jpeg&width=1536&height=660&bbox=58,10,50,18
The BoreholeView service does not support filtering of the results (CQL-filters). However, the BoreholeDownload service provides such functionality.
BoreholeDownload service
The BoreholeDownload service is a Web Feature Service (WFS) that follows the specifications of the Open Geospatial Consortium (OGC) standard WFS 2.0.2 (https://www.ogc.org/standard/wfs/), which is related to ISO 19119 standard Geographic information - Services (https://www.iso.org/standard/59221.html). As such, it can be used as part of the EPOS data portal but also interfaced directly.
The base address for the Borehole services is:
https://data.geoscience.earth/api/wxsBorehole
The capabilities document (GetCapabilities) for the WFS service is available at:
https://data.geoscience.earth/api/wxsBorehole?service=WFS&request=GetCapabilities
The schema of the service is available at:
https://data.geoscience.earth/def/epos-geosciml-lite
Query parameters of a straight BoreholeDownload WFS request include the output format (outputFormat) and the geographic bounding box (bbox), as in the example below. The maximum number of features is limited on the server side, to avoid returning millions of feature on not sufficiently restricted queries.
https://data.geoscience.earth/api/wxsBorehole?service=WFS&request=GetFeature&typenames=epos-gsmlp:BoreholeView&version=2.0.2&outputFormat=json&bbox=54.9703,0.41748,57.0785,5.37963
In addition, attributes can be filtered for content by adding specific parameters (CQL filters) to the query. See section Searching data.
BoreholeIndex model overview
The BoreholeIndex model is the data model from which the BoreholeView and BoreholeDownload services were developed. Built on the GeoSciML-Portrayal 4 Application Schema, FeatureType "BoreholeView" (http://geosciml.org/; a simplified view of a GeoSciML Borehole), it comprises the attributes that were regarded as most important for discovering boreholes and borehole data in the data landscape, thus, extending the GeoSciML-Portrayal FeatureType "BoreholeView". (In GeoSciML terms, this is an instance of a Borehole feature with key property values summarised as labels (unconstrained character strings) or arbitrarily selected classifiers to be used for thematic mapping purposes. The latter are the properties suffixed with ’_uri’ and will contain URIs referring to controlled concepts in published vocabularies.)

Attributes
identifier [CharacterString]:
Globally unique identifer. Pointer to the
representation of the borehole in the eposb full borehole data service
(a link to the documentation will be inserted here as soon as it becomes
available).
purpose [BoreholePurposeCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The purpose for which the borehole was drilled. (e.g. mineral
exploration, hydrocarbon exploration, hydrocarbon production,
groundwater monitoring, geothermal).
status [BoreholeStatusCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The present status of the borehole (e.g. abandoned, completed, proposed,
suspended).
drillingMethod [BoreholeDrillingMethodCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Indicates the drilling method, or methods, used for this borehole
(e.g. RAB, auger, diamond core drilling, air core drilling, piston).
operator [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Organisation or agency responsible for commissioning of the borehole (as
opposed to the agency which drilled the borehole).
driller [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The organisation responsible for drilling the borehole (as opposed to
commissioning the borehole).
drillStartDate [Date]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The date of the start of drilling (formatted as a gml:timePosition -
e.g. 2012-03-17).
drillEndDate [Date]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The date of the end of drilling (formatted as a gml:timePosition -
e.g. 2012-03-28).
startPoint [BoreholeStartPointCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Indicates the position relative to the ground surface where the borehole
commenced (e.g. open pit floor or wall, underground, natural land
surface, sea floor).
inclinationType [BoreholeInclinationCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Indicates the type of inclination of the borehole (e.g. vertical,
inclined up, inclined down, horizontal).
boreholeMaterialCustodian [CharacterString]: Multiplicity: ( [0..1],
Allow duplicates: 0, Is ordered: False )
Organisation that is the custodian of the material recovered from the
borehole.
boreholeLength_m [Number]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The length of a borehole, in metres, as determined by the data provider.
Length may have different sources, e.g. driller’s measurement, logger’s
measurement, survey measurement.
elevation_m [Number]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Compromise approach to supply elevation data, in metres, for the
borehole (i.e. wellbore) start point. This is to allow for legacy data
without elevation data, and for software that cannot process a 3D
GM_Point. The SRS will be a one dimensional vertical SRS (EPSG code in
the range 5600-5799).
elevation_srs [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
URI of a spatial reference system of the elevation value. Mandatory if
elevation_m is populated.
positionalAccuracy [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
An estimate of the accuracy of the location of the borehole collar
location.
source [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Text describing details and citations to source materials for the
borehole and, if available, providing URLs to reference material and
publications describing the borehole. This could be a short text
synopsis of key information that would also be in the metadata record
referenced by metadata_uri.
parentBorehole_uri [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
URI referring to the unique ID of a parent borehole (e.g. parent well of
a sidetrack wellbore).
metadata_uri [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
URI referring to a metadata record describing the provenance of data.
genericSymbolizer [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Identifier for a symbol from standard (locally or community defined)
symbolization scheme for portrayal.
shape [GM_Object]:
Geometry defining the extent of the borehole start point.
lastUpdated [Date]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The date of the last update of borehole data information (formatted as a gml:timePosition -
e.g. 2012-03-17).
lastHarvested [Date]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The date of the last harvest of borehole data information (formatted as a gml:timePosition -
e.g. 2012-03-17).
provider [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Provider identifier according to ICS-C.
cored [boolean]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Indicates whether drill core was taken from the borehole. Can be
anything from spot/sidewall core to fully cored.
persistentIdentifier [CharacterString]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
A resolvable persistent identifier for the borehole (e.g. IGSN of DataCite). Typically, it resolves to a landing page and is not to be confused with the globally unique identifiers used for the borehole services.
accessToPhysicalDrillCore [Boolean]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
Indicates whether physical access to the drill core is possible (at a
core repository).
boreholeUse [BoreholeUseCode]:
Multiplicity: ( [0..1], Allow duplicates: 0, Is ordered: False )
The present use of the borehole.
Associations
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: rockGeoChemistry (Class) OM_Observation «FeatureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: detailedDescription (Class) Borehole «featureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: poreGasChemistry (Class) OM_Observation «FeatureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: geoTechnicalInfo (Class) WellConstruction «FeatureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: groundWaterLevel (Class) EnvironmentalMonitoringFacility
«featureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: groundWaterChemistry (Class) OM_Observation «FeatureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: geophysicalLogs (Class) OM_Observation «FeatureType»
Cardinality: [0..1]
Association (direction: Source → Destination)
Source: BoreholeView «FeatureType»
Target: geologicalDescription (Class) GW_GeologyLog «FeatureType»
Cardinality: [0..1]
Searching data in the BoreholeIndex content
BoreholeIndex data are searchable in the EPOS data portal by the latter’s native filter functions, or by querying the BoreholeDownload service with CQL-Filters added to the WFS query (Note: bounding box and CQL-filters are mutually exclusive).
Attributes that can be filtered are
Attribute |
CQL property |
Vocabulary/format |
Identifier |
gml:identifier |
string |
Borehole name |
gml:name |
string |
Borehole purpose |
gml:purpose |
object [gml:ReferenceType]: http://inspire.ec.europa.eu/codelist/BoreholePurposeValue |
Borehole status |
status |
object [gml:ReferenceType]: https://data.geoscience.earth/ncl/BoreholeStatus |
Drilling method |
drillingMethod |
object [gml:ReferenceType]: https://data.geoscience.earth/ncl/DrillingMethod |
Operator |
operator |
string |
Driller (company) |
driller |
string |
Drilling start date |
drillStartDate |
date (YY-MM-DD) |
Drilling end date |
drillEndDate |
date (YY-MM-DD) |
Start point |
startPoint |
object [gml:ReferenceType]: https://data.geoscience.earth/ncl/StartPoint |
Borehole inclination |
inclinationType |
object [gml:ReferenceType]: https://data.geoscience.earth/ncl/BoreholeInclinationType |
Custodian of sample material |
boreholeMaterialCustodian |
string |
Length of the borehole [m] |
boreholeLength_m |
object [gml:MeasurementType] |
Elevation of the drill site [m] |
elevation_m |
object [gml:MeasurementType] |
Elevation reference system |
elevation_srs |
string [URL] |
Positional accuracy |
positionalAccuracy |
double |
Source of information |
source |
string |
Parent borehole URI |
parentBorehole_uri |
string [URL] |
Metadata URI |
metadata_uri |
string [URL] |
Borehole start poing |
shape |
object [gml:GeometryPropertyType] |
Last updated date |
lastUpdated |
date (YY-MM-DD) |
Last harvested date |
lastHarvested |
date (YY-MM-DD) |
Provider |
provider |
string |
Borehole has drill core |
cored |
boolean |
Persistent Identifier |
persistentIdentifier |
string |
Physical access to drill core possible |
accessToPhysicalDrillCore |
boolean |
Present use of borehole |
boreholeUse |
object [gml:ReferenceType]: http://inspire.ec.europa.eu/codelist/BoreholePurposeValue |
Detailed description (of the borehole) |
detailedDescription |
object [gml:ReferenceType] |
Geophysical logs from the borehole |
geophysicalLogs |
object [gml:ReferenceType] |
Geological description of the drilled section |
geologicalDescription |
object [gml:ReferenceType] |
Groundwater level in the borehole |
groundWaterLevel |
object [gml:ReferenceType] |
Groundwater chemistry |
groundWaterChemistry |
object [gml:ReferenceType] |
Detailed description (of the borehole) |
detailedDescription |
object [gml:ReferenceType] |
Rock geochemistry of the borehole or sample material |
rockGeochemistry |
object [gml:ReferenceType] |
Pore gas geochemistry of sample material |
poreGasGeochemistry |
object [gml:ReferenceType] |
Geotechnical information on the borehole |
GeoTechnicalInfo |
object [gml:ReferenceType] |
The remaining attributes (Associations) provide linked data. CQL-filters on these attributes can be applied but do not provide a meaningful context. The full capabilities of the filter function are described in the GetCapabilities document. Use a URL encoding service for the filter content in case you have difficulties with whitespaces and special characters, e.g. https://www.url-encode-decode.com.
Example:
https://data.geoscience.earth/api/wxsBorehole?service=WFS&request=GetFeature&typenames=epos-gsmlp:BoreholeView&version=2.0.2&outputFormat=gml3&CQL_FILTER=driller='seateam'