# Road

A Road feature is a link set which represents a collection of Road Link features that share the same name (for example, Bilston Road) or classification number (for example, A41), used primarily by motorised vehicles. A road will reference the complete collection of Road Link features, irrespective of which authority boundary it falls within. The feature type will include Motorways, A Roads, B Roads, and Named Thoroughfares (roads).

The link set may not be contiguous across junctions or where a classified road consists of separate sections, which may be separated by some considerable distance. In addition, the same Road Link feature may be referenced by multiple Road features.

## Data schema versioning

The following table provides details about this feature type’s data schema versions, including the reasons behind the changes and the related launch date when each version went live.

### Data schema version table

<table><thead><tr><th width="112.3333740234375">Version ↓</th><th width="179">Launch Date</th><th width="176.4443359375">Latest Date</th><th>Change</th></tr></thead><tbody><tr><td>1.1</td><td>28 July 2025</td><td><code>Ongoing</code></td><td>Minor version increment that removes the query and download filters from the Description attribute as this attribute supports only a single value.</td></tr><tr><td>1.0</td><td>29 September 2022</td><td>27 July 2025</td><td>Initial launch of the Road Feature Type.</td></tr></tbody></table>

Please see [Data schema versioning](https://docs.os.uk/osngd/getting-started/os-ngd-fundamentals/data-schema-versioning) for in-depth information about data schema versioning in the OS NGD.

## Temporal filtering

Temporal filtering allows you to order a one-off snapshot of data from the OS NGD from a current or past date. It is an optional step when you create a new data package in OS Select+Build (the OS NGD download service).

The earliest and latest dates on which you can request a one-off snapshot of a date in the past for this feature type's data schema versions are indicated in the [Data schema version table](#data-schema-version-table) above. Please note that any data temporally filtered earlier than the specified launch date indicated in the table for the data schema versions may contain data inconsistencies.

More information about temporal filtering on OS NGD feature types is available from the [Getting started with temporal filtering guide](https://docs.os.uk/osngd/getting-started/downloading-with-os-select+build/getting-started-with-data-packages/getting-started-with-temporal-filtering).

## 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.

{% hint style="info" %}

## Loading OS NGD CSV files into databases

Comma-separated values (CSV) file format is universally supported for easy ingestion into all major database products. Before loading OS NGD data contained in CSV files into a database, it is necessary to create relevant tables. Data definition language (DDL) statements for PostgreSQL, SQL Server and Oracle can be accessed in our [OS NGD Resources GitHub repository](https://github.com/OrdnanceSurvey/osngd-resources/tree/main/database-resources).

For instructions on loading CSV files, see the [Getting Started with CSV](https://docs.os.uk/osngd/accessing-os-ngd/downloading-with-os-select+build/getting-started-with-csv/loading-csv-files) guide.
{% endhint %}

### 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.1

### 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.1

### 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.1

### 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.1

### 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.1

### 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](https://docs.os.uk/osngd/code-lists/code-lists-overview/changetypevalue)
* **Max Length:** 50
* **OS NGD API – Features Filterable:** Yes
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### geometry

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.1
* **Geometry Type:** MultiLineString

### geometry\_length

The measured length of the geometry in metres.

* **Data Types:** Number (GeoJSON), Float (GPKG), Real (CSV)
* **Nullable:** false
* **Precision:** 15
* **Scale:** 6
* **OS NGD API – Features Filterable:** Yes
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### theme

The OS NGD theme to which this feature belongs.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** false
* **Code List Name:** [themevalue](https://docs.os.uk/osngd/code-lists/code-lists-overview/themevalue)
* **Max Length:** 40
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### 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:** [roaddescriptionvalue](https://docs.os.uk/osngd/code-lists/code-lists-overview/roaddescriptionvalue)
* **Max Length:** 4
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### designatedname1\_text

Official name assigned to the Road by a designated Street Naming Authority.

{% hint style="info" %}
On the road feature, this will always be the name captured by Ordnance Survey.
{% endhint %}

* **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.1

### designatedname1\_language

The language of designatedname1, 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](https://docs.os.uk/osngd/code-lists/code-lists-overview/languagevalue)
* **Max Length:** 3
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### designatedname1\_responsibleauthorityidentifier

Identifier of the authority that has current responsibility for naming and numbering.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** true
* **Max Length:** 4
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** Yes
* **Data Schema Version:** 1.1

### designatedname1\_responsibleauthorityname

Name of the authority that has current responsibility for naming and numbering.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** true
* **Max Length:** 100
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** Yes
* **Data Schema Version:** 1.1

### designatedname2\_text

Official name assigned to the Road by a designated Street Naming Authority.

{% hint style="info" %}
On the road feature, this will always be the name captured by Ordnance Survey.
{% endhint %}

* **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.1

### designatedname2\_language

The language of designatedname2, 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](https://docs.os.uk/osngd/code-lists/code-lists-overview/languagevalue)
* **Max Length:** 3
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### designatedname2\_responsibleauthorityidentifier

Identifier of the authority that has current responsibility for naming and numbering.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** true
* **Max Length:** 4
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** Yes
* **Data Schema Version:** 1.1

### designatedname2\_responsibleauthorityname

Name of the authority that has current responsibility for naming and numbering.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** true
* **Max Length:** 100
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** Yes
* **Data Schema Version:** 1.1

### nationalroadcode

The national number of the Road or Street.

* **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.1

### 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:** true
* **Code List Name:** [roadclassificationvalue](https://docs.os.uk/osngd/code-lists/code-lists-overview/roadclassificationvalue)
* **Max Length:** 21
* **OS NGD API – Features Filterable:** Yes
* **OS Select+Build Filterable:** Yes
* **Data Schema Version:** 1.1

***

## Road Link Reference

A cross reference table mapping Road to Road Link and thereby linking the identifiers of these two feature types so that you can understand the full extent of a named way. 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.

### 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.1

### roadid

The identifier for the Road feature.

* **Data Types:** String (GeoJSON), String (GPKG), String (CSV)
* **Nullable:** false
* **OS NGD API – Features Filterable:** No
* **OS Select+Build Filterable:** No
* **Data Schema Version:** 1.1

### roadversiondate

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.1


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.os.uk/osngd/data-structure/transport/transport-network/road.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
