Road Link

A Road Link is a linear spatial object that defines the geometry and connectivity of a road network between two points in the network. Road Links can represent single carriageways, dual carriageways, slip roads, roundabouts, and indicative trajectories across traffic squares. Road Links will be split for connectivity purposes (for example, at junctions) and Road Nodes will connect the Road Links together. Each Road Link will provide a reference to the Road Nodes at the start and end of the Road Link.

Temporal filtering

The earliest and latest dates on which you can request a one-off snapshot of a date in the past for the data schema versions available for this feature type are detailed in the following table:

Data schema version
Earliest date
Latest date

1.0

29 September 2022

Ongoing

2.0

27 September 2023

Ongoing

3.0

27 March 2024

Ongoing

More information about data schema versioning in the OS NGD Transport Theme is available from the Data schema versioning page.

Feature type attributes

The following sub-sections provide details about the attributes included with this feature type, their data types in the different output formats, and other important metadata about them.

osid

Primary identifier for the feature. The OSID is a Globally Unique Identifier (GUID) and requires no centralised authority to ensure uniqueness. Note that the same OSID can occur in more than one feature type when a single feature is represented multiple times in the OS NGD.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 36

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

toid

Topographic Identifier (TOID) of the feature, as published in the OS MasterMap suite of products.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 20

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

versiondate

Date when the version was last updated.

  • Data Types: String (GeoJSON), Date (GPKG), Date (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

versionavailablefromdate

The date this version of the feature became the latest version.

  • Data Types: String (GeoJSON), DateTime (GPKG), DateTime (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

versionavailabletodate

The date this version of the feature was superseded by an update or ceased to exist.

  • Data Types: String (GeoJSON), DateTime (GPKG), DateTime (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

changetype

The type of change that generated a new version of the feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: changetypevalue

  • Max Length: 50

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

geometry

3D geometry for the feature.

  • Data Types: Geometry (GeoJSON), Geometry (GPKG), WKT (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

  • Geometry Type: LineString

geometry_length_m (formerly geometry_length)

This attribute is called geometry_length in data schema version 1.0 and has been renamed geometry_length_m from version 2.0 onward.

The measured length of the geometry in metres.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 15

  • Scale: 3

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

theme

The OS NGD theme to which the feature belongs.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: themevalue

  • Max Length: 40

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

description

A single descriptive value intended for a quick understanding of what the feature represents.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: formofwaytypevalue

  • Max Length: 42

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

roadclassification

The official designated importance of a road that provides an indication of its expected usage and importance.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: roadclassificationvalue

  • Max Length: 21

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

routehierarchy

A classification of the road designed to give the most appropriate route.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: roadfunctionvalue

  • Max Length: 32

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

trunkroad

An indication of whether the Road Link forms part of the Trunk Road network.

  • Data Types: Boolean (GeoJSON), Integer (GPKG), String (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

primaryroute

An indication of whether the Road Link forms part of the Primary Route network.

  • Data Types: Boolean (GeoJSON), Integer (GPKG), String (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

roadclassificationnumber

The official road number assigned by the appropriate authority, for example, M6.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 10

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

name1_text

Name assigned to identify the feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 254

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

name1_language

The language type associated with name1. The valid values are defined in the Language Value Code List.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: languagevalue

  • Max Length: 3

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

name2_text

The alternative language name assigned to identify the feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 254

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

name2_language

The language type associated with name2. The valid values are defined in the Language Value Code List.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: languagevalue

  • Max Length: 3

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

alternatename1_text

Another name for the Road that the feature is part of. This is populated with the name captured by Ordnance Survey when it differs from that in Street.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 254

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

alternatename1_language

The language the name is expressed in, provided as a 3-digit ISO 639-2 code ('eng, 'cym', 'gla').

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: languagevalue

  • Max Length: 3

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

alternatename2_text

Another name for the Road that the feature is part of. This is populated with the name captured by Ordnance Survey when it differs from that in Street.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 254

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

alternatename2_language

The language the name is expressed in, provided as a 3-digit ISO 639-2 code ('eng, 'cym', 'gla').

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: languagevalue

  • Max Length: 3

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

operationalstate

Description of the current state of the Street, indicating which point the street record is at within its lifecycle.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: operationalstatevalue

  • Max Length: 19

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

directionality

Indication of the direction of traffic flow.

The directionality indicates the direction of traffic flow in relation to the direction of digitisation. A Road Node that is ‘in direction’ means that the traffic moves from start to end node, but ‘against direction’ means the traffic moves from end node to start node. The start and end nodes indicate the direction of digitisation.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: linkdirectionvalue

  • Max Length: 21

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

cyclefacility

An indication of whether the the link has facilities for cyclists.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: cyclefacilityvalue

  • Max Length: 45

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

An indication of whether the facilities for cyclists apply to the whole link feature.

  • Data Types: Boolean (GeoJSON), Integer (GPKG), String (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

roadstructure

Identifies whether this section of Road passes through or over a physical structure.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: roadstructurevalue

  • Max Length: 14

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

roadwidth_average

An indication of the average width of the road carriageway.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: true

  • Precision: 3

  • Scale: 1

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

roadwidth_minimum

An indication of the minimum width of the road carriageway.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: true

  • Precision: 3

  • Scale: 1

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

roadwidth_confidencelevel

The original capture specification for the topographic feature used to indicate the width of the carriageway. This provides an indication of the confidence that can be placed in the value provided.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 27

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

elevationgain_indirection

The total ascent experienced when passing along a link feature in the direction of digitisation, calculated from three-dimensional geometry.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 1

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

elevationgain_againstdirection

The total ascent experienced when passing along a link feature against the direction of digitisation, calculated from three-dimensional geometry.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 1

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

heightingmethod

The origin and derivation of the three dimensional geometry of the Road Link.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: heightingmethodvalue

  • Max Length: 19

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

capturespecification

Indicates the capture specification used by OS when capturing the feature. This could either be Urban, Rural or Moorland.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 40

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

matchstatus

Indication of whether the feature has been matched to a feature in the National or Scottish Street Gazetteers.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: matchstatusvalue

  • Max Length: 39

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 1.0, 2.0, 3.0

startnode

The node coincident with the first vertex of the geometry attribute of the link feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 36

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

startgradeseparation

The relative level of the link at the startnode.

  • Data Types: Integer (GeoJSON), Integer (GPKG), Integer (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

endnode

The node coincident with the last vertex of the geometry attribute of the link feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 36

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

endgradeseparation

The relative level of the link at the endnode.

  • Data Types: Integer (GeoJSON), Integer (GPKG), Integer (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

presenceofpavement_overall_m

Indicates the overall presence of pavements along both sides of a Road Link in metres of the total length of the Road Link.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 2

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 2.0, 3.0

presenceofpavement_overallpercentage

Indicates the overall presence of pavements along both sides of a Road Link as a percentage of the total length of the Road Link.

  • Data Types: Integer (GeoJSON), Integer (GPKG), Integer (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 2.0, 3.0

presenceofpavement_left_m

Indicates the presence of pavements along the left hand side of a Road Link in metres.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 2

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_leftpercentage

Indicates the presence of pavements along the left hand side of a Road Link as a percentage of the total length of the Road Link.

  • Data Types: Integer (GeoJSON), Integer (GPKG), Integer (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_right_m

Indicates the presence of pavements along the right hand side of a Road Link in metres.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 2

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_rightpercentage

Indicates the presence of pavements along the right hand side of a Road Link as a percentage of the total length of the Road Link.

  • Data Types: Integer (GeoJSON), Integer (GPKG), Integer (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_minimumwidth_m

Indicates the minimum width of the pavement along a Road Link measured in metres.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 2

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 2.0, 3.0

presenceofpavement_averagewidth_m

Indicates the average width of the pavement along a Road Link measured in metres.

  • Data Types: Number (GeoJSON), Float (GPKG), Real (CSV)

  • Nullable: false

  • Precision: 6

  • Scale: 2

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 2.0, 3.0

presenceofpavement_evidencedate

The date on which the latest evidence was gathered to make an update if required. For example, the date of collection by a surveyor or third party information received.

  • Data Types: String (GeoJSON), Date (GPKG), Date (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_updatedate

Date when the pavement presence was last updated.

  • Data Types: String (GeoJSON), Date (GPKG), Date (CSV)

  • Nullable: false

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_source

Indicates the data source of the pavement presence.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 85

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

presenceofpavement_capturemethod

The capture method describes how the pavement presence was created, for example, via remote survey or via an automated process.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Code List Name: capturemethodvalue

  • Max Length: 25

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 2.0, 3.0

The extent of the Road Link to which the tramline applies.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: extentoflinkvalue

  • Max Length: 15

  • OS NGD API – Features Filterable: Yes

  • OS Select+Build Filterable: Yes

  • Data Schema Version: 3.0

presenceoftram_linkdirection

The direction of the Road Link to which the tramline applies in relation to the direction the link has been captured in.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Code List Name: linkdirectionvalue

  • Max Length: 21

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 3.0

presenceoftram_updatedate

Date when the the presence of tram was last updated.

  • Data Types: String (GeoJSON), Date (GPKG), Date (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 3.0

presenceoftram_source

The source organisation indicating the data provider of the tram data.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: true

  • Max Length: 85

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 3.0


Road Track Or Path Reference

A cross reference table mapping Road Link to Road Track Or Path. The following sub-sections provide details about the attributes included in this cross reference table, their data types in the different output formats, and other important metadata about them.

roadtrackorpathid

The identifier of the Road Track Or Path feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 36

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

roadlinkid

The identifier of the Road Link feature.

  • Data Types: String (GeoJSON), String (GPKG), String (CSV)

  • Nullable: false

  • Max Length: 36

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

roadlinkversiondate

The date this version of the feature entered the OS National Geographic Database.

  • Data Types: String (GeoJSON), Date (GPKG), Date (CSV)

  • Nullable: true

  • OS NGD API – Features Filterable: No

  • OS Select+Build Filterable: No

  • Data Schema Version: 1.0, 2.0, 3.0

Last updated