# OS Open Roads Technical Specification

OS Open Roads is a topologically-structured link-and-node road network of Great Britain. The links represent an approximate central alignment of the road carriageways and include all classified and unclassified roads that make up Great Britain’s road network.

OS Open Roads is a generalised product which is automatically derived from Ordnance Survey large-scale data. Generalisation is the process of reducing the scale and complexity of the data whilst maintaining the important elements and characteristics of the features. The appropriate product scale is 1:25 000, with a recommended viewing scale range of 1:15 000 to 1:30 000.

## Available formats <a href="#id-1.1-available-formats" id="id-1.1-available-formats"></a>

OS Open Roads is supplied in the following formats:

* Geography Markup Language (GML): A national vector dataset in GML version 3.2.1 Simple Features Profile – Level 1.
* Shapefile: A national vector dataset in ESRI shapefile (.shp).
* GeoPackage: A national vector GeoPackage (.gpkg) file.
* Vector tiles: A national vector tiles file (MBTiles).

## Identifiers <a href="#id-1.2-identifiers" id="id-1.2-identifiers"></a>

Each feature has a unique identifier. The identifier property name, which holds the feature's unique identifier, differs for each format:

* **GML**: *gml:id* property.
* **Esri shapefile**: *identifier* property.
* **GeoPackage**: *id* property.
* **Vector tiles**: *id* property.

{% hint style="info" %}
The identifier is not persistent between product versions and there is therefore no change history information for features.
{% endhint %}

## Adherence to standards <a href="#id-1.3-adherence-to-standards" id="id-1.3-adherence-to-standards"></a>

OS Open Roads is based on the INSPIRE Transport Networks Road application schema, which is based on the ISO/TC 211 family of open standards.

### Extending the INSPIRE specification <a href="#id-1.3.1-extending-the-inspire-specificatio" id="id-1.3.1-extending-the-inspire-specificatio"></a>

* OS Open Roads extends the INSPIRE specification with an additional feature type, MotorwayJunction.
* The OS RoadLink feature type extends the INSPIRE RoadLink feature type with a number of additional properties.

## UML diagram and table conventions <a href="#id-1.3.2-uml-diagram-and-table-conventions" id="id-1.3.2-uml-diagram-and-table-conventions"></a>

The data structure is described by Unified Modelling Language (UML) class diagrams and accompanying tables containing text. The UML diagrams conform to the approach specified in ISO 19103 - Conceptual schema language and ISO 19109 - Rules for application schema, as adopted by INSPIRE.

Colour conventions are used in the diagrams and tables to distinguish the INSPIRE specification from the additional properties that have been added in the Ordnance Survey specification. In the UML diagrams, classes from the INSPIRE data specification are grey, whereas classes in the Ordnance Survey specification are orange. All code lists are blue and enumerations are shown in green. The tables which follow later in this technical specification use orange for feature types, blue for code lists, and green for enumerations.

<figure><img src="/files/0Iu3JpHlQno42RXszp0x" alt="UML class diagram outlining the colour conventions specified in this technical specification: INSPIRE feature types are grey, OS Open Roads feature types are orange, code lists are blue, and enumerations are green." width="535"><figcaption><p>UML diagram using the colour conventions specified in this technical specification.</p></figcaption></figure>

### Lexical conventions <a href="#id-1.3.3-lexical-conventions" id="id-1.3.3-lexical-conventions"></a>

* Class names are conceptually meaningful names (singular noun) in UpperCamelCase.
* Class names end in *Value* when the class is assigned the stereotype <\<CodeList>> or <\<Enumeration>>.
* Property names (attributes and associations) are in lowerCamelCase.

### Stereotypes <a href="#id-1.3.4-stereotypes" id="id-1.3.4-stereotypes"></a>

The following stereotypes are used on UML elements:

| Stereotype         | UML element | Description                                                                                                         |
| ------------------ | ----------- | ------------------------------------------------------------------------------------------------------------------- |
| Application schema | Package     | Parent package containing sub-packages and elements that comprise part of the modular specification.                |
| FeatureType        | Class       | A spatial object type \[ISO 19136].                                                                                 |
| No stereotype      | Class       | A non-spatial object type, for example, document or organisation.                                                   |
| Type               | Class       | A structured data type with identity.                                                                               |
| Enumeration        | Class       | A fixed controlled set of values for a free text data type.                                                         |
| CodeList           | Class       | A controlled set of values for a free text data type that may be extended.                                          |
| Voidable           | Property    | A property that is required but is either not currently captured (unknown) or is partially populated (unpopulated). |
| LifecycleInfo      | Property    | Property considered part of the life cycle information.                                                             |

## Relationships and associations <a href="#id-1.3.5-relationships-and-associations" id="id-1.3.5-relationships-and-associations"></a>

There are four key types of relationship that can be defined between classes, only the following two exist in OS Open Roads:

1. **Generalisation/specialisation** – This is used to denote either:
   * An extension relationship - The target class represents the same real-world phenomenon. It has the same name as the class it extends. It simply includes additional properties. \
     \
     OR
   * A sub-typing relationship - The target class defines a specialised sub-type of a parent feature, for example, a TransportNetwork is a sub-type of a generic Network class.<br>
2. **Directed association** – This is used to denote relationships between features. These relationships are by reference only (that is, they are implemented by a property whose value is the identifier of the related feature or object). The directed end is assigned a name that describes the relationship and a multiplicity.<br>

   <figure><img src="/files/0DdpiLizg3iAU09JQW7H" alt="UML diagram illustrating the two key types of relationships in OS Open Roads: directed association and generalisation/specialisation, which is split into two sub-types, extension relationships and sub-typing relationships." width="563"><figcaption><p>UML diagram illustrating the two key types of relationships in OS Open Roads: directed association and generalisation/specialisation, which is split into two sub-types, extension relationships and sub-typing relationships.</p></figcaption></figure>

## Index

This technical specification includes the following sections:

* [Product structure](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/product-structure.md)
* [Feature types](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/feature-types.md)
* [Code lists and enumerations](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/code-lists-and-enumerations.md)
* [GML overview](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/geopackage-overview.md)
* [ESRI shapefile overview](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/esri-shapefile-overview.md)
* [GeoPackage overview](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/geopackage-overview.md)
* [Vector tiles overview](/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification/vector-tiles-overview.md)


---

# 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/os-downloads/products/transport-network-portfolio/os-open-roads/os-open-roads-technical-specification.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.
