Skip to content

Feature Request: Linear Referencing (LRS) support in Location #519

@ekimir

Description

@ekimir

Summary

Add an optional linearReference object to the OC4IDS Location schema, enabling road infrastructure projects to be referenced by route ID and measurement (e.g., "Road I-1, km 120+000 to km 135+500") in addition to GeoJSON coordinates.

Problem

Road infrastructure projects worldwide are referenced by route and kilometer markers — this is how engineers, planners, contractors, and asset management systems identify locations. The current OC4IDS location schema supports GeoJSON coordinates, gazetteers, addresses, and URIs, but has no way to express linear referencing, which is the universal spatial language of road agencies.

This creates a gap when:

  • Connecting OC4IDS project data to road asset management systems (PMS/BMS), which index everything by LRS position
  • Publishing data that road engineers can immediately relate to their domain context
  • Linking construction contracts to the specific road segments they affect in national road registers

GeoJSON coordinates and linear references are complementary, not alternatives. Coordinates show where on a map; linear references say what in engineering terms (which road, which kilometer). Both are needed.

Proposal

Add an optional linearReference object to Location based on ISO 19148 (Linear Referencing) conceptual schema:

{
  "locations": [
    {
      "id": "loc-1",
      "description": "Road I-1, km 120 to km 135.5",
      "geometry": {
        "type": "LineString",
        "coordinates": [[24.75, 42.14], [24.85, 42.16]]
      },
      "linearReference": {
        "type": "absolute",
        "routeId": "I-1",
        "startMeasure": 120000,
        "endMeasure": 135500,
        "measureUnit": "meters",
        "direction": "both",
        "lrsAuthority": "Road Infrastructure Agency (Bulgaria)",
        "referenceSystemUri": "https://api.bg/lrs/republican-roads"
      }
    }
  ]
}

Fields

Field Type Required Description
type string No absolute, relative, link-node, or interpolative
routeId string Yes Route identifier in national road register
routeName string No Human-readable route name
startMeasure number Yes Start measurement along route
endMeasure number No End measurement (omit for points)
measureUnit string No meters (default) or kilometers
direction string No increasing, decreasing, both
referentId string No For relative: referent point ID (e.g., France "PR-15"). For link-node: link ID
referentOffset number No For relative: offset from referent (e.g., France abscisse)
endReferentId string No For relative segments: end referent point ID
endReferentOffset number No For relative segments: offset from end referent
referenceSystemUri uri No URI identifying the national LRS (disambiguates calibration versions)
lrsAuthority string No Organization maintaining the LRS

Use Case

We are preparing a dump of 500+ open data construction and reconstruction contracts from Bulgaria's Road Infrastructure Agency (АПИ), which manages 19,932 km of national roads. These contracts span two decades of road construction and represent billions of EUR in public investment.

Every contract is referenced internally by route and kilometer markers (e.g., "Road I-1, km 120+000 to km 135+500"). When we publish this data in OC4IDS format, we want to include these LRS references alongside GeoJSON coordinates, so that road engineers can immediately identify locations, and asset management systems (PMS/BMS, ISO 55001:2024) can link contracts to LRS-indexed asset registers.

АПИ is building an ISO 55001:2024-aligned national road management platform with a national asset register indexed by LRS (ISO 19148). Construction contracts need to flow from OC4IDS into the asset register — and both systems reference locations by route + kilometer, not coordinates.

This is not Bulgaria-specific. Every road agency uses LRS:

  • NVDB (Sweden): 25+ years of LRS-indexed road data
  • ARNOLD (USA): Federal requirement for all public roads
  • National Highways (England): LRS-based asset data management
  • Rijkswaterstaat (Netherlands): NWB-ID system
  • INSPIRE Transport Networks (EU): Linear referencing for all member states

Any country publishing road construction data through OC4IDS/CoST would benefit from this extension.

Standards Reference

  • ISO 19148:2021 — Geographic information — Linear referencing
  • ISO 19133 — Location-based services — Tracking and navigation
  • INSPIRE Transport Networks data specification

Implementation

We have drafted a complete extension following OCDS extension conventions:

  • extension.json — metadata
  • project-schema.json — schema patch adding linearReference to Location
  • codelists/linearReferenceType.csv — codelist for reference types
  • README.md — full documentation with examples

Happy to submit as a PR or contribute in whatever format is preferred.


Submitted by Mihail-Ernesto Mihailov (mmihailov@gmail.com)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions