# Product structure

OS Open Rivers consists of two core features:

* **WatercourseLink** – A feature which represents all or part of a watercourse.
* **HydroNode** – A feature which represents a river’s source, end, or where three or more links meet at a junction, and places where the real-world related attribution recorded changes, for example, a watercourse becoming tidal.

This product is based upon the INSPIRE Data Specification on Hydrography. The result is a product that inherits attribution from INSPIRE. An overview of the product's structure can be found in the UML diagram below, which highlights the inherited INSPIRE feature types and attribution. Properties of the INSPIRE specification which are voidable are not included in the diagrams or tables that follow. For information on the INSPIRE properties which are not included in this product, please see the [INSPIRE Data Specification on Hydrography](https://knowledge-base.inspire.ec.europa.eu/publications/inspire-data-specification-hydrography-technical-guidelines_en).

{% hint style="info" %}

### Attribute naming across formats

GML attribute naming is used in the main text of this specification. GeoPackage and vector tile attribute naming is very similar to GML as there are no character-length limitations in the GeoPackage or MBTiles formats; however, shapefile attribute naming is limited to 11 characters.&#x20;

* Attribute mappings between GML and shapefile are provided in the [Esri shapefile overview](/os-downloads/products/water-portfolio/os-open-rivers/os-open-rivers-technical-specification/esri-shapefile-overview.md).&#x20;
* Attribute mappings mapping between GML and GeoPackage are provided in the[ GeoPackage overview](/os-downloads/products/water-portfolio/os-open-rivers/os-open-rivers-technical-specification/geopackage-overview.md).&#x20;
* Attribute mappings between GML and vector tiles are provided in the [Vector tiles overview](/os-downloads/products/water-portfolio/os-open-rivers/os-open-rivers-technical-specification/vector-tiles-overview.md).
  {% endhint %}

<figure><img src="/files/n0aYW5aMJyBPZN8lkn6F" alt="UML class diagram illustrating the data structure of OS Open Rivers and how it has been extended from the INSPIRE Data Specification on Hydrography. " width="563"><figcaption><p>UML class diagram illustrating the data structure of OS Open Rivers and how it has been extended from the INSPIRE Data Specification on Hydrography.</p></figcaption></figure>


---

# 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/water-portfolio/os-open-rivers/os-open-rivers-technical-specification/product-structure.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.
