GEF-BORE
GEF-BORE-Report is a legacy data exchange format for documenting and sharing borehole descriptions (boorbeschrijvingen) in the geotechnical engineering. It provides a structured way to capture the visual and tactile observations made during drilling operations.
It is commonly used in the Netherlands and Flanders (Belgium). The format is no longer maintained and technically outdated, but it remains in use due to extensive legacy data.
Structure
Section titled “Structure”A GEF-BORE file consists of a Header and a Datablock.
The Header contains structured metadata using keywords that start with #
, defining properties from file format version (#GEFID
) to drilling methods (#MEASUREMENTTEXT
) and coordinate systems (#XYID
, #ZID
). Key header sections include column definitions (#COLUMNINFO), specimen documentation (#SPECIMENVAR
, #SPECIMENTEXT
), and measurement parameters (#MEASUREMENTVAR
) for borehole geometry and groundwater data.
After it comes the Datablock, containing layer-by-layer soil descriptions with mandatory depth intervals and soil classifications, plus optional textual descriptions of each layer’s characteristics, color, and composition. This text-based structure makes GEF-BORE files human-readable while ensuring machine parsing compatibility across different geotechnical software platforms.
Measurement Variables
Section titled “Measurement Variables”Measurement variables (#MEASUREMENTVAR
) in GEF-BORE-Report are optional numerical parameters that provide quantitative information about the borehole, drilling process, samples, and site conditions that cannot be captured in the main data block structure.
#MEASUREMENTVAR = ID, value, unit, description
The GEF-Bore specification reserves IDs 1-50 for standardized measurement variables. Users can define custom measurement variables using IDs 129-1500.
Measurement Text Variables
Section titled “Measurement Text Variables”While measurement variables handle numerical data, measurement text variables store coded text information using standardized terminology and abbreviations to ensure consistent interpretation across different organizations and software systems.
#MEASUREMENTTEXT = ID, value, description
Drilling Method Codes
Section titled “Drilling Method Codes”Drilling Method Codes are used in Measurement Text Variables to document the drilling techniques employed in different segments of the borehole in MEASUREMENTTEXT
IDs 31 to 40.
#MEASUREMENTTEXT = ID, CODE, boormethode
Specimens Documentation
Section titled “Specimens Documentation”The specimen system handles documentation for up to 200 soil samples collected during drilling. It splits sample data between #SPECIMENVAR
(numerical properties like depths and diameters) and #SPECIMENTEXT
(codes, dates, and equipment details).
Specimen Text Variables
Section titled “Specimen Text Variables”#SPECIMENTEXT = ID, value, description
Specimen texts 1 to 5 are reserved to be able to add comments to the sample.
For example, #SPECIMENTEXT = 1, folie ontbreekt, opmerking monstername1
Specimen Numerical Variables
Section titled “Specimen Numerical Variables”#SPECIMENVAR = ID, value, unit, description
where
- ID = Index number (calculated using formulas)
- value = Numerical measurement
- unit = Measurement unit (m, mm, -)
- description = Descriptive text in Dutch
Horizontal Reference System
Section titled “Horizontal Reference System”The #XYID
keyword defines the horizontal coordinate reference system in GEF-Bore files, specifying the positioning datum and location coordinates.
The format is #XYID = code, X, Y, deltaX, deltaY
, where code
identifies the coordinate system, X
and Y
provide the boring location coordinates, and deltaX, deltaY
indicate positioning accuracy.
For example, #XYID = 31000, 79578.38, 424838.97, 0.02, 0.02
places the test at Dutch RD coordinates (79578.38, 424838.97) with ±2cm accuracy.
This keyword enables places the test in real-world coordinates, which enables integration with GIS systems. This in turn enables integration of geotechnical data alongside structural or building models in spatial context.
Local Coordinate Systems
Section titled “Local Coordinate Systems”Code 00000
allows a local coordinate system with its description in #MEASUREMENTTEXT = 7
:
For example:
#XYID = 00000, 125000, 450000, 0.1, 0.1#MEASUREMENTTEXT = 7, Local site grid, origin at main building corner
Vertical Coordinate Systems
Section titled “Vertical Coordinate Systems”The #ZID
keyword defines the vertical reference system and surface elevation.
It takes the format #ZID = code, elevation, accuracy
.
- The code identifies the height reference system
- Elevation gives the surface level in meters relative to that datum
- Accuracy specifies measurement precision.
For example, #ZID = 31000, -2.45, 0.01
indicates the ground surface is 2.45 meters below NAP with 1cm accuracy. This keyword is mandatory because all layer depths in the data block are measured downward from this reference surface.
Column Quantities
Section titled “Column Quantities”Column Quantities are the standardized physical measurements that can appear in GEF-Bore data columns (#COLUMNINFO). Each has a unique ID number (1-4) that defines what the column contains.
For example #COLUMNINFO = 3, m, depth, 1
tells parsers: “Column 3 contains quantity 1 diepte onderkant laag in m”.
The quantity system ensures a column labeled “1” always means “diepte onderkant laag”, regardless of which software created the file.