From 15fdb6f4674a095cc3bedbb7a42484134271c683 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Tue, 3 Mar 2026 16:19:56 -0800 Subject: [PATCH 1/4] Sync codegen output (2026-03-03) --- docs/schema/reference/addresses/address.md | 16 +++++++-------- .../addresses/types/address_level.md | 2 +- docs/schema/reference/base/bathymetry.md | 4 ++-- docs/schema/reference/base/infrastructure.md | 4 ++-- docs/schema/reference/base/land.md | 4 ++-- docs/schema/reference/base/land_cover.md | 4 ++-- docs/schema/reference/base/land_use.md | 4 ++-- docs/schema/reference/base/water.md | 4 ++-- docs/schema/reference/buildings/building.md | 18 ++++++++--------- .../reference/buildings/building_part.md | 18 ++++++++--------- docs/schema/reference/core/name_rule.md | 2 +- docs/schema/reference/core/names.md | 2 +- docs/schema/reference/core/perspectives.md | 2 +- .../scoping/vehicle_axle_count_selector.md | 2 +- .../core/scoping/vehicle_height_selector.md | 2 +- .../core/scoping/vehicle_length_selector.md | 2 +- .../core/scoping/vehicle_weight_selector.md | 2 +- .../core/scoping/vehicle_width_selector.md | 2 +- docs/schema/reference/core/sources.md | 4 ++-- docs/schema/reference/divisions/division.md | 20 +++++++++---------- .../reference/divisions/division_area.md | 4 ++-- .../reference/divisions/division_boundary.md | 6 +++--- .../reference/divisions/types/division_id.md | 4 ++-- .../reference/divisions/types/hierarchy.md | 4 ++-- .../divisions/types/hierarchy_item.md | 2 +- docs/schema/reference/places/place.md | 14 ++++++------- docs/schema/reference/places/types/address.md | 17 ++++++++++++++++ .../reference/places/types/categories.md | 2 +- .../schema/reference/places/types/taxonomy.md | 4 ++-- .../schema/reference/pydantic/_category_.json | 4 ++++ .../pydantic/networks/_category_.json | 3 +++ .../reference/pydantic/networks/email_str.md | 7 +++++++ .../reference/pydantic/networks/http_url.md | 9 +++++++++ docs/schema/reference/system/_category_.json | 2 +- .../reference/system/country_code_alpha2.md | 1 + docs/schema/reference/system/phone_number.md | 2 +- docs/schema/reference/system/ref/id.md | 2 +- docs/schema/reference/system/region_code.md | 3 ++- docs/schema/reference/system/wikidata_id.md | 2 +- .../reference/transportation/connector.md | 4 ++-- .../reference/transportation/segment.md | 6 +++--- .../types/access_restriction_rule.when.md | 8 ++++---- .../transportation/types/access_rules.md | 4 ++-- .../types/destination_labels.md | 2 +- .../transportation/types/destination_rule.md | 4 ++-- .../types/prohibited_transition_rule.md | 2 +- .../types/prohibited_transition_rule.when.md | 8 ++++---- .../transportation/types/rail_flag_rule.md | 2 +- .../transportation/types/rail_flags.md | 4 ++-- .../transportation/types/road_flag_rule.md | 2 +- .../transportation/types/road_flags.md | 4 ++-- .../transportation/types/route_reference.md | 8 ++++---- .../types/speed_limit_rule.when.md | 8 ++++---- .../transportation/types/speed_limits.md | 4 ++-- .../transportation/types/surfaces.md | 4 ++-- .../transportation/types/width_rules.md | 4 ++-- 56 files changed, 165 insertions(+), 123 deletions(-) create mode 100644 docs/schema/reference/places/types/address.md create mode 100644 docs/schema/reference/pydantic/_category_.json create mode 100644 docs/schema/reference/pydantic/networks/_category_.json create mode 100644 docs/schema/reference/pydantic/networks/email_str.md create mode 100644 docs/schema/reference/pydantic/networks/http_url.md diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index fe11b9873..8f3239fd0 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -24,8 +24,8 @@ provinces, state, and regions, and similar addressing units are found. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Position of the address. Addresses are point geometries.
*Allowed geometry types: Point* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the address. Addresses are point geometries.
*Allowed geometry types: Point* | | `theme` | `"addresses"` | | | `type` | `"address"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -37,14 +37,14 @@ provinces, state, and regions, and similar addressing units are found. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*, region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For example, in the United States, we expect two items: the state, and the locality or municipality within the state. Other countries might have as few as one, or even three or more.

When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted.
*`minimum length: 1`*
*`maximum length: 5`* | +| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*, region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For example, in the United States, we expect two items: the state, and the locality or municipality within the state. Other countries might have as few as one, or even three or more.

When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted.
*Minimum length: 1*
*Maximum length: 5* | | `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | A string without leading or trailing whitespace | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | -| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use.
*`minimum length: 1`* | -| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana* is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje.
*`minimum length: 1`* | -| `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code.
*`minimum length: 1`* | -| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated.
*`minimum length: 1`* | -| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a campus, this field names the specific secondary unit being addressed.
*`minimum length: 1`* | +| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use.
*Minimum length: 1* | +| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana* is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje.
*Minimum length: 1* | +| `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code.
*Minimum length: 1* | +| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated.
*Minimum length: 1* | +| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a campus, this field names the specific secondary unit being addressed.
*Minimum length: 1* | ## Examples diff --git a/docs/schema/reference/addresses/types/address_level.md b/docs/schema/reference/addresses/types/address_level.md index 489b6bdeb..8380083eb 100644 --- a/docs/schema/reference/addresses/types/address_level.md +++ b/docs/schema/reference/addresses/types/address_level.md @@ -19,7 +19,7 @@ countries and regions, address levels do not necessarily correspond to administr | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | A string without leading or trailing whitespace
*`minimum length: 1`* | +| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | A string without leading or trailing whitespace
*Minimum length: 1* | ## Used By diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index 878bd8e2f..5e33312f7 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -12,8 +12,8 @@ lake beds or ocean floors. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Shape of the underwater area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the underwater area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"base"` | | | `type` | `"bathymetry"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index 4365889c1..e695bcb05 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -12,8 +12,8 @@ such as bridges, airports, runways, aerialways, communication towers, and power | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index e6f4b4c50..cae30e890 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -22,8 +22,8 @@ TODO: Update this description when the relationship to `land_cover` is better un | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"land"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index f90be5604..a166c9f13 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -19,8 +19,8 @@ TODO: Explain relationship to `Land` features. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Shape of the covered land area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the covered land area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"base"` | | | `type` | `"land_cover"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index f742bc35c..3e3b39926 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -17,8 +17,8 @@ TODO: Explain relationship to `Land` features. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"land_use"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index 848e491cb..b4cdad48f 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -33,8 +33,8 @@ and `water=*`. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"water"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index 4388c32b6..dd0b6f47c 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -17,8 +17,8 @@ model of the building. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | The building's footprint or roofprint (if traced from aerial/satellite imagery).
*Allowed geometry types: MultiPolygon, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The building's footprint or roofprint (if traced from aerial/satellite imagery).
*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"buildings"` | | | `type` | `"building"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -46,20 +46,20 @@ model of the building. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | -| `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | +| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | | `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.
*`strict=True`* | -| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part.
*`> 0`* | -| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part.
*`> 0`* | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | +| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.
*`> 0`* | +| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.
*`> 0`* | +| `min_height` | [`float64`](../system/primitive/primitives.md) (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | +| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | | `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | -| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | +| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | | `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | -| `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | +| `roof_height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | ## Examples diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index cb5f6c077..b4c75b78e 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -20,8 +20,8 @@ vertical dimension. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | The footprint or roofprint of the building part.
*Allowed geometry types: MultiPolygon, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The footprint or roofprint of the building part.
*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"buildings"` | | | `type` | `"building_part"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -47,20 +47,20 @@ vertical dimension. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | -| `height` | `float64` (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | +| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | | `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.
*`strict=True`* | -| `num_floors` | `int32` (optional) | Number of above-ground floors of the building or part.
*`> 0`* | -| `num_floors_underground` | `int32` (optional) | Number of below-ground floors of the building or part.
*`> 0`* | -| `min_height` | `float64` (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | -| `min_floor` | `int32` (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | +| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.
*`> 0`* | +| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.
*`> 0`* | +| `min_height` | [`float64`](../system/primitive/primitives.md) (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | +| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | | `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | -| `roof_direction` | `float64` (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | +| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | | `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | -| `roof_height` | `float64` (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | +| `roof_height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | ## Examples diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md index a7464b928..463556de1 100644 --- a/docs/schema/reference/core/name_rule.md +++ b/docs/schema/reference/core/name_rule.md @@ -18,7 +18,7 @@ Examples might include: | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value.
*`minimum length: 1`* | +| `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value.
*Minimum length: 1* | | `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | | `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md index 9da02614f..0fadd0c17 100644 --- a/docs/schema/reference/core/names.md +++ b/docs/schema/reference/core/names.md @@ -6,7 +6,7 @@ Multilingual names container. | Name | Type | Description | | -----: | :----: | ------------- | -| `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name.
*`minimum length: 1`* | +| `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name.
*Minimum length: 1* | | `common` | [`CommonNames`](common_names.md) (map, optional) | | | `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | diff --git a/docs/schema/reference/core/perspectives.md b/docs/schema/reference/core/perspectives.md index f1da9f7ce..d323e5cdf 100644 --- a/docs/schema/reference/core/perspectives.md +++ b/docs/schema/reference/core/perspectives.md @@ -7,7 +7,7 @@ Political perspectives container. | Name | Type | Description | | -----: | :----: | ------------- | | `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md index 5ca32e613..461dd926a 100644 --- a/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_axle_count_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on the number of axles they have. | -----: | :----: | ------------- | | `dimension` | `"axle_count"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | `uint8` | Number of axles on the vehicle | +| `value` | [`uint8`](../../system/primitive/primitives.md) | Number of axles on the vehicle | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_height_selector.md b/docs/schema/reference/core/scoping/vehicle_height_selector.md index a2e0a5fdb..82b561ba0 100644 --- a/docs/schema/reference/core/scoping/vehicle_height_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_height_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their height. | -----: | :----: | ------------- | | `dimension` | `"height"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | `float64` | Vehicle height selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle height selection threshold in the given `unit`
*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Height unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_length_selector.md b/docs/schema/reference/core/scoping/vehicle_length_selector.md index 1cc8eafeb..80e8c2792 100644 --- a/docs/schema/reference/core/scoping/vehicle_length_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_length_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their length. | -----: | :----: | ------------- | | `dimension` | `"length"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | `float64` | Vehicle length selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle length selection threshold in the given `unit`
*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Length unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_weight_selector.md b/docs/schema/reference/core/scoping/vehicle_weight_selector.md index e9d1f98ae..6e6c73180 100644 --- a/docs/schema/reference/core/scoping/vehicle_weight_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_weight_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their weight. | -----: | :----: | ------------- | | `dimension` | `"weight"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | `float64` | Vehicle weight selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle weight selection threshold in the given `unit`
*`≥ 0`* | | `unit` | [`WeightUnit`](../weight_unit.md) | Weight unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_width_selector.md b/docs/schema/reference/core/scoping/vehicle_width_selector.md index 8759d0cb9..084f2e6df 100644 --- a/docs/schema/reference/core/scoping/vehicle_width_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_width_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their width. | -----: | :----: | ------------- | | `dimension` | `"width"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | `float64` | Vehicle width selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle width selection threshold in the given `unit`
*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Width unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/sources.md b/docs/schema/reference/core/sources.md index 0908e45f7..ac48419ef 100644 --- a/docs/schema/reference/core/sources.md +++ b/docs/schema/reference/core/sources.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`SourceItem`](source_item.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index 602194f67..de28bd77b 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -31,8 +31,8 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Approximate location of a position commonly associated with the real-world entity modeled by the division feature.
*Allowed geometry types: Point* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Approximate location of a position commonly associated with the real-world entity modeled by the division feature.
*Allowed geometry types: Point* | | `theme` | `"divisions"` | | | `type` | `"division"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -46,11 +46,11 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies[]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `hierarchies[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | -| `hierarchies[].subtype` | [`PlaceType`](types/place_type.md) | | -| `hierarchies[].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | -| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions.
*`minimum length: 1`*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | +| `hierarchies[][]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `hierarchies[][].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | +| `hierarchies[][].subtype` | [`PlaceType`](types/place_type.md) | | +| `hierarchies[][].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | +| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions.
*Minimum length: 1*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | | `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `class` | [`DivisionClass`](types/division_class.md) (optional) | | | `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized.

For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'.

This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | @@ -60,9 +60,9 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `norms` | [`Norms`](types/division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | -| `population` | `int32` (optional) | Population of the division
*`≥ 0`* | -| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `population` | [`int32`](../system/primitive/primitives.md) (optional) | Population of the division
*`≥ 0`* | +| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index 837f409a7..f7c9b0abc 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -29,8 +29,8 @@ belongs to. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | The area covered by the division with which this area feature is associated
*Allowed geometry types: MultiPolygon, Polygon* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The area covered by the division with which this area feature is associated
*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"divisions"` | | | `type` | `"division_area"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index b3350746a..14186daf9 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -13,8 +13,8 @@ Some boundaries may be disputed by the divisions on one or both sides. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Boundary line or lines
*Allowed geometry types: LineString, MultiLineString* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Boundary line or lines
*Allowed geometry types: LineString, MultiLineString* | | `theme` | `"divisions"` | | | `type` | `"division_boundary"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -30,7 +30,7 @@ Some boundaries may be disputed by the divisions on one or both sides. | `class` | [`BoundaryClass`](types/division_boundary/boundary_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.
*References [`Division`](division.md) (boundary of)*
*`minimum length: 2`*
*`maximum length: 2`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.
*References [`Division`](division.md) (boundary of)*
*Minimum length: 2*
*Maximum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities.
*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | | `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | diff --git a/docs/schema/reference/divisions/types/division_id.md b/docs/schema/reference/divisions/types/division_id.md index dbdb7316e..dcbedc0e8 100644 --- a/docs/schema/reference/divisions/types/division_id.md +++ b/docs/schema/reference/divisions/types/division_id.md @@ -6,8 +6,8 @@ Underlying type: `string` ## Constraints -- `minimum length: 1` -- `minimum length: 1` (from [`Id`](../../system/ref/id.md)) +- Minimum length: 1 +- Minimum length: 1 (from [`Id`](../../system/ref/id.md)) - Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) (from [`NoWhitespaceString`](../../system/no_whitespace_string.md)) ## Used By diff --git a/docs/schema/reference/divisions/types/hierarchy.md b/docs/schema/reference/divisions/types/hierarchy.md index 98e4cad51..73ed6a45b 100644 --- a/docs/schema/reference/divisions/types/hierarchy.md +++ b/docs/schema/reference/divisions/types/hierarchy.md @@ -8,8 +8,8 @@ Underlying type: `list<`[`HierarchyItem`](hierarchy_item.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/divisions/types/hierarchy_item.md b/docs/schema/reference/divisions/types/hierarchy_item.md index c8f711d80..40e749563 100644 --- a/docs/schema/reference/divisions/types/hierarchy_item.md +++ b/docs/schema/reference/divisions/types/hierarchy_item.md @@ -8,7 +8,7 @@ One division in a hierarchy. | -----: | :----: | ------------- | | `division_id` | [`DivisionId`](division_id.md) | ID of the division | | `subtype` | [`PlaceType`](place_type.md) | | -| `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division
*`minimum length: 1`* | +| `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division
*Minimum length: 1* | ## Used By diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index b4571890e..48e93affc 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -11,8 +11,8 @@ Places are point representations of real-world facilities, businesses, services, | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Position of the place. Places are point geometries.
*Allowed geometry types: Point* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the place. Places are point geometries.
*Allowed geometry types: Point* | | `theme` | `"places"` | | | `type` | `"place"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -34,10 +34,10 @@ Places are point representations of real-world facilities, businesses, services, | `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | | `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | | `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist anymore and will always be paired with an `operating_status` of `"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on which to estimate our confidence level. | -| `websites` | `list` (optional) | The websites of the place.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `socials` | `list` (optional) | The social media URLs of the place.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `emails` | `list` (optional) | The email addresses of the place.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `websites` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The websites of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `socials` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The social media URLs of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `emails` | `list<`[`EmailStr`](../pydantic/networks/email_str.md)`>` (optional) | The email addresses of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `brand` | [`Brand`](types/brand.md) (optional) | The brand associated with the place. | | `brand.names` | [`Names`](../core/names.md) (optional) | | | `brand.names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -52,7 +52,7 @@ Places are point representations of real-world facilities, businesses, services, | `brand.names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `brand.names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | -| `addresses[]` | `list<`[`Address`](../addresses/address.md)`>` (optional) | The address or addresses of the place
*`minimum length: 1`* | +| `addresses[]` | `list<`[`Address`](types/address.md)`>` (optional) | The address or addresses of the place
*Minimum length: 1* | | `addresses[].freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | | `addresses[].locality` | `string` (optional) | City, town, or neighborhood component of the place address | | `addresses[].postcode` | `string` (optional) | Postal code component of the place address | diff --git a/docs/schema/reference/places/types/address.md b/docs/schema/reference/places/types/address.md new file mode 100644 index 000000000..b64d5be16 --- /dev/null +++ b/docs/schema/reference/places/types/address.md @@ -0,0 +1,17 @@ +# Address + +An address associated with a place. + +## Fields + +| Name | Type | Description | +| -----: | :----: | ------------- | +| `freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | +| `locality` | `string` (optional) | City, town, or neighborhood component of the place address | +| `postcode` | `string` (optional) | Postal code component of the place address | +| `region` | [`RegionCode`](../../system/region_code.md) (optional) | An ISO 3166-2 principal subdivision code | +| `country` | [`CountryCodeAlpha2`](../../system/country_code_alpha2.md) (optional) | An ISO 3166-1 alpha-2 country code | + +## Used By + +- [`Place`](../place.md) diff --git a/docs/schema/reference/places/types/categories.md b/docs/schema/reference/places/types/categories.md index d1ce2cc92..a06cbc94e 100644 --- a/docs/schema/reference/places/types/categories.md +++ b/docs/schema/reference/places/types/categories.md @@ -9,7 +9,7 @@ Complete list is available on GitHub: [https://github.com/OvertureMaps/schema/bl | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/places/types/taxonomy.md b/docs/schema/reference/places/types/taxonomy.md index 665400fc0..6a408e883 100644 --- a/docs/schema/reference/places/types/taxonomy.md +++ b/docs/schema/reference/places/types/taxonomy.md @@ -9,8 +9,8 @@ Provides the primary classification, full hierarchy path, and alternate categori | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | -| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/pydantic/_category_.json b/docs/schema/reference/pydantic/_category_.json new file mode 100644 index 000000000..6bc65c372 --- /dev/null +++ b/docs/schema/reference/pydantic/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Pydantic", + "position": 8 +} diff --git a/docs/schema/reference/pydantic/networks/_category_.json b/docs/schema/reference/pydantic/networks/_category_.json new file mode 100644 index 000000000..8dc67bc4c --- /dev/null +++ b/docs/schema/reference/pydantic/networks/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Networks" +} diff --git a/docs/schema/reference/pydantic/networks/email_str.md b/docs/schema/reference/pydantic/networks/email_str.md new file mode 100644 index 000000000..3bf99260b --- /dev/null +++ b/docs/schema/reference/pydantic/networks/email_str.md @@ -0,0 +1,7 @@ +# EmailStr + +See: [Pydantic docs](https://docs.pydantic.dev/latest/api/networks/#pydantic.networks.EmailStr) + +## Used By + +- [`Place`](../../places/place.md) diff --git a/docs/schema/reference/pydantic/networks/http_url.md b/docs/schema/reference/pydantic/networks/http_url.md new file mode 100644 index 000000000..b4b25f0ef --- /dev/null +++ b/docs/schema/reference/pydantic/networks/http_url.md @@ -0,0 +1,9 @@ +# HttpUrl + +A type that will accept any http or https URL. + +See: [Pydantic docs](https://docs.pydantic.dev/latest/api/networks/#pydantic.networks.HttpUrl) + +## Used By + +- [`Place`](../../places/place.md) diff --git a/docs/schema/reference/system/_category_.json b/docs/schema/reference/system/_category_.json index 72961fccf..22378997a 100644 --- a/docs/schema/reference/system/_category_.json +++ b/docs/schema/reference/system/_category_.json @@ -1,4 +1,4 @@ { "label": "System", - "position": 8 + "position": 9 } diff --git a/docs/schema/reference/system/country_code_alpha2.md b/docs/schema/reference/system/country_code_alpha2.md index f159aa6f7..62980acaf 100644 --- a/docs/schema/reference/system/country_code_alpha2.md +++ b/docs/schema/reference/system/country_code_alpha2.md @@ -11,6 +11,7 @@ Underlying type: `string` ## Used By - [`Address`](../addresses/address.md) +- [`Address`](../places/types/address.md) - [`Division`](../divisions/division.md) - [`DivisionArea`](../divisions/division_area.md) - [`DivisionBoundary`](../divisions/division_boundary.md) diff --git a/docs/schema/reference/system/phone_number.md b/docs/schema/reference/system/phone_number.md index 6d326c7db..8bfed0469 100644 --- a/docs/schema/reference/system/phone_number.md +++ b/docs/schema/reference/system/phone_number.md @@ -6,7 +6,7 @@ Underlying type: `string` ## Constraints -- Constraint for international phone numbers. (`PhoneNumberConstraint`, pattern: `^\+\d{1,3}[\s\-\(\)0-9]+$`) +- Allows only international phone numbers. (`PhoneNumberConstraint`, pattern: `^\+\d{1,3}[\s\-\(\)0-9]+$`) ## Used By diff --git a/docs/schema/reference/system/ref/id.md b/docs/schema/reference/system/ref/id.md index 08e7ef1f3..0625858d1 100644 --- a/docs/schema/reference/system/ref/id.md +++ b/docs/schema/reference/system/ref/id.md @@ -6,7 +6,7 @@ Underlying type: `string` ## Constraints -- `minimum length: 1` +- Minimum length: 1 - Allows only strings that contain no whitespace characters. (`NoWhitespaceConstraint`, pattern: `^\S+$`) (from [`NoWhitespaceString`](../no_whitespace_string.md)) ## Used By diff --git a/docs/schema/reference/system/region_code.md b/docs/schema/reference/system/region_code.md index 755bb26a9..bf2f016ee 100644 --- a/docs/schema/reference/system/region_code.md +++ b/docs/schema/reference/system/region_code.md @@ -6,10 +6,11 @@ Underlying type: `string` ## Constraints -- ISO 3166-2 principal subdivision code constraint. (`RegionCodeConstraint`, pattern: `^[A-Z]{2}-[A-Z0-9]{1,3}$`) +- Allows only ISO 3166-2 principal subdivision codes. (`RegionCodeConstraint`, pattern: `^[A-Z]{2}-[A-Z0-9]{1,3}$`) ## Used By +- [`Address`](../places/types/address.md) - [`Division`](../divisions/division.md) - [`DivisionArea`](../divisions/division_area.md) - [`DivisionBoundary`](../divisions/division_boundary.md) diff --git a/docs/schema/reference/system/wikidata_id.md b/docs/schema/reference/system/wikidata_id.md index 83ae967b8..ebef7cee6 100644 --- a/docs/schema/reference/system/wikidata_id.md +++ b/docs/schema/reference/system/wikidata_id.md @@ -10,7 +10,7 @@ Underlying type: `string` ## Constraints -- Constraint for Wikidata identifiers (Q followed by digits). (`WikidataIdConstraint`, pattern: `^Q\d+$`) +- Allows only Wikidata identifiers (Q followed by digits). (`WikidataIdConstraint`, pattern: `^Q\d+$`) ## Used By diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index 670036e02..ae6af6c2c 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -13,8 +13,8 @@ Connectors are compatible with GeoJSON Point features. | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Position of the connector
*Allowed geometry types: Point* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the connector
*Allowed geometry types: Point* | | `theme` | `"transportation"` | | | `type` | `"connector"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index 146005322..27a58e4bc 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -9,8 +9,8 @@ sidebar_position: 1 | Name | Type | Description | | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | -| `bbox` | `bbox` (optional) | An optional bounding box for the feature | -| `geometry` | `geometry` | Segment centerline
*Allowed geometry types: LineString* | +| `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Segment centerline
*Allowed geometry types: LineString* | | `theme` | `"transportation"` | | | `type` | `"segment"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -33,7 +33,7 @@ sidebar_position: 1 | `access_restrictions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.vehicle` | [`VehicleAxleCountSelector`](../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | -| `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector.
*`minimum length: 2`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector.
*Minimum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | | `connectors[].connector_id` | [`Id`](../system/ref/id.md) | A unique identifier | | `connectors[].at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | | `level_rules[]` | [`LevelRules`](types/level_rules.md) (list, optional) | Defines the Z-order, i.e. stacking order, of the road segment. | diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.when.md b/docs/schema/reference/transportation/types/access_restriction_rule.when.md index 2341b567f..7937f7c1f 100644 --- a/docs/schema/reference/transportation/types/access_restriction_rule.when.md +++ b/docs/schema/reference/transportation/types/access_restriction_rule.when.md @@ -8,10 +8,10 @@ Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MO | -----: | :----: | ------------- | | `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | | `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints diff --git a/docs/schema/reference/transportation/types/access_rules.md b/docs/schema/reference/transportation/types/access_rules.md index 056e870ef..1f3341a71 100644 --- a/docs/schema/reference/transportation/types/access_rules.md +++ b/docs/schema/reference/transportation/types/access_rules.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`AccessRestrictionRule`](access_restriction_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/transportation/types/destination_labels.md b/docs/schema/reference/transportation/types/destination_labels.md index 6d0928680..7b22c70bf 100644 --- a/docs/schema/reference/transportation/types/destination_labels.md +++ b/docs/schema/reference/transportation/types/destination_labels.md @@ -6,7 +6,7 @@ The type of object of the destination label. | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached
*`minimum length: 1`* | +| `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached
*Minimum length: 1* | | `type` | [`DestinationLabelType`](destination_label_type.md) | | ## Used By diff --git a/docs/schema/reference/transportation/types/destination_rule.md b/docs/schema/reference/transportation/types/destination_rule.md index d7cbf0148..79cfbe92d 100644 --- a/docs/schema/reference/transportation/types/destination_rule.md +++ b/docs/schema/reference/transportation/types/destination_rule.md @@ -8,10 +8,10 @@ | `to_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | | `to_segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | | `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | -| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | +| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | | `labels[].value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | | `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | -| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label.
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | +| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label.
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | | `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | | `when.heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.md index 8f14281d7..04905debe 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.md @@ -4,7 +4,7 @@ | Name | Type | Description | | -----: | :----: | ------------- | -| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `sequence[].connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `sequence[].segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | | `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md index d2ecfaefe..a15fe3020 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md @@ -8,10 +8,10 @@ Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL | -----: | :----: | ------------- | | `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | | `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints diff --git a/docs/schema/reference/transportation/types/rail_flag_rule.md b/docs/schema/reference/transportation/types/rail_flag_rule.md index ecc911c2e..06bf91cc9 100644 --- a/docs/schema/reference/transportation/types/rail_flag_rule.md +++ b/docs/schema/reference/transportation/types/rail_flag_rule.md @@ -6,7 +6,7 @@ Rail-specific flag rule with geometric scoping only. | Name | Type | Description | | -----: | :----: | ------------- | -| `values` | `list<`[`RailFlag`](rail_flag.md)`>` | *`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `values` | `list<`[`RailFlag`](rail_flag.md)`>` | *Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RailFlagRule applies to. | ## Used By diff --git a/docs/schema/reference/transportation/types/rail_flags.md b/docs/schema/reference/transportation/types/rail_flags.md index 3760d311c..806331852 100644 --- a/docs/schema/reference/transportation/types/rail_flags.md +++ b/docs/schema/reference/transportation/types/rail_flags.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`RailFlagRule`](rail_flag_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/transportation/types/road_flag_rule.md b/docs/schema/reference/transportation/types/road_flag_rule.md index 736e6aae4..d7a823eea 100644 --- a/docs/schema/reference/transportation/types/road_flag_rule.md +++ b/docs/schema/reference/transportation/types/road_flag_rule.md @@ -6,7 +6,7 @@ Road-specific flag rule with geometric scoping only. | Name | Type | Description | | -----: | :----: | ------------- | -| `values` | `list<`[`RoadFlag`](road_flag.md)`>` | *`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)* | +| `values` | `list<`[`RoadFlag`](road_flag.md)`>` | *Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RoadFlagRule applies to. | ## Used By diff --git a/docs/schema/reference/transportation/types/road_flags.md b/docs/schema/reference/transportation/types/road_flags.md index 03ecb0157..88445c57d 100644 --- a/docs/schema/reference/transportation/types/road_flags.md +++ b/docs/schema/reference/transportation/types/road_flags.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`RoadFlagRule`](road_flag_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/transportation/types/route_reference.md b/docs/schema/reference/transportation/types/route_reference.md index dbefedb19..e20b7a7aa 100644 --- a/docs/schema/reference/transportation/types/route_reference.md +++ b/docs/schema/reference/transportation/types/route_reference.md @@ -6,10 +6,10 @@ Route reference with linear referencing support. | Name | Type | Description | | -----: | :----: | ------------- | -| `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route
*`minimum length: 1`* | -| `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to
*`minimum length: 1`* | -| `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route
*`minimum length: 1`* | -| `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage
*`minimum length: 1`* | +| `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route
*Minimum length: 1* | +| `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to
*Minimum length: 1* | +| `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route
*Minimum length: 1* | +| `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage
*Minimum length: 1* | | `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.when.md b/docs/schema/reference/transportation/types/speed_limit_rule.when.md index c1014c0cc..8b7aca70f 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.when.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.when.md @@ -8,10 +8,10 @@ Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Sco | -----: | :----: | ------------- | | `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | | `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to.
*`minimum length: 1`*
*Ensures all items in a collection are unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints diff --git a/docs/schema/reference/transportation/types/speed_limits.md b/docs/schema/reference/transportation/types/speed_limits.md index ee56f981c..c42f47267 100644 --- a/docs/schema/reference/transportation/types/speed_limits.md +++ b/docs/schema/reference/transportation/types/speed_limits.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`SpeedLimitRule`](speed_limit_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/transportation/types/surfaces.md b/docs/schema/reference/transportation/types/surfaces.md index f1294e726..846f48828 100644 --- a/docs/schema/reference/transportation/types/surfaces.md +++ b/docs/schema/reference/transportation/types/surfaces.md @@ -6,8 +6,8 @@ Underlying type: `list<`[`SurfaceRule`](surface_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By diff --git a/docs/schema/reference/transportation/types/width_rules.md b/docs/schema/reference/transportation/types/width_rules.md index 92537325a..1c5cbf035 100644 --- a/docs/schema/reference/transportation/types/width_rules.md +++ b/docs/schema/reference/transportation/types/width_rules.md @@ -8,8 +8,8 @@ Underlying type: `list<`[`WidthRule`](width_rule.md)`>` ## Constraints -- `minimum length: 1` -- Ensures all items in a collection are unique. (`UniqueItemsConstraint`) +- Minimum length: 1 +- All items must be unique. (`UniqueItemsConstraint`) ## Used By From 0b90e060b58b20ac9ad08189bb20e753b46bb812 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Wed, 4 Mar 2026 09:15:40 -0800 Subject: [PATCH 2/4] Include bbox in examples --- docs/schema/reference/addresses/address.md | 4 ++++ docs/schema/reference/base/bathymetry.md | 4 ++++ docs/schema/reference/base/infrastructure.md | 4 ++++ docs/schema/reference/base/land.md | 4 ++++ docs/schema/reference/base/land_cover.md | 4 ++++ docs/schema/reference/base/land_use.md | 4 ++++ docs/schema/reference/base/water.md | 4 ++++ docs/schema/reference/buildings/building.md | 4 ++++ docs/schema/reference/buildings/building_part.md | 4 ++++ docs/schema/reference/divisions/division.md | 4 ++++ docs/schema/reference/divisions/division_area.md | 4 ++++ docs/schema/reference/divisions/division_boundary.md | 4 ++++ docs/schema/reference/places/place.md | 4 ++++ docs/schema/reference/transportation/connector.md | 4 ++++ docs/schema/reference/transportation/segment.md | 4 ++++ 15 files changed, 60 insertions(+) diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index 8f3239fd0..dc1475fa0 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -51,6 +51,10 @@ provinces, state, and regions, and similar addressing units are found. | Column | Value | | -------: | ------- | | `id` | `416ab01c-d836-4c4f-aedc-2f30941ce94d` | +| `bbox.xmin` | `-176.56381225585938` | +| `bbox.xmax` | `-176.56378173828125` | +| `bbox.ymin` | `-43.94719696044922` | +| `bbox.ymax` | `-43.94718933105469` | | `geometry` | `POINT (-176.5637854 -43.9471955)` | | `theme` | `addresses` | | `type` | `address` | diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index 5e33312f7..3cf6366e6 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -37,6 +37,10 @@ lake beds or ocean floors. | Column | Value | | -------: | ------- | | `id` | `5d40bd6c-db14-5492-b29f-5e25a59032bc` | +| `bbox.xmin` | `-175.12791442871094` | +| `bbox.xmax` | `-170.05111694335938` | +| `bbox.ymin` | `-77.9718246459961` | +| `bbox.ymax` | `-75.64299774169922` | | `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | | `theme` | `base` | | `type` | `bathymetry` | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index e695bcb05..b303adc61 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -50,6 +50,10 @@ such as bridges, airports, runways, aerialways, communication towers, and power | Column | Value | | -------: | ------- | | `id` | `e9e3d506-89c0-3473-8cee-5e5ac6596d6c` | +| `bbox.xmin` | `-180.0` | +| `bbox.xmax` | `-179.99998474121094` | +| `bbox.ymin` | `-82.42408752441406` | +| `bbox.ymax` | `-82.42407989501953` | | `geometry` | `POINT (-179.9999994 -82.42408)` | | `theme` | `base` | | `type` | `infrastructure` | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index cae30e890..238ebb7c3 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -60,6 +60,10 @@ TODO: Update this description when the relationship to `land_cover` is better un | Column | Value | | -------: | ------- | | `id` | `70fc3596-a987-3fea-820c-c016c0a2f0da` | +| `bbox.xmin` | `-178.7000274658203` | +| `bbox.xmax` | `-178.6999969482422` | +| `bbox.ymin` | `-85.45001220703125` | +| `bbox.ymax` | `-85.44999694824219` | | `geometry` | `POINT (-178.7 -85.45)` | | `theme` | `base` | | `type` | `land` | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index a166c9f13..ce538162e 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -44,6 +44,10 @@ TODO: Explain relationship to `Land` features. | Column | Value | | -------: | ------- | | `id` | `c347312d-012b-5e73-8bd3-a10d04b2981d` | +| `bbox.xmin` | `-180.0001983642578` | +| `bbox.xmax` | `-179.99313354492188` | +| `bbox.ymin` | `65.95172119140625` | +| `bbox.ymax` | `65.96218872070312` | | `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | | `theme` | `base` | | `type` | `land_cover` | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index 3e3b39926..773c5b014 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -55,6 +55,10 @@ TODO: Explain relationship to `Land` features. | Column | Value | | -------: | ------- | | `id` | `1e1f6095-5bd2-3fdb-a422-41351b848e9d` | +| `bbox.xmin` | `-176.56825256347656` | +| `bbox.xmax` | `-176.56231689453125` | +| `bbox.ymin` | `-43.96001052856445` | +| `bbox.ymax` | `-43.95420837402344` | | `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | | `theme` | `base` | | `type` | `land_use` | diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index b4cdad48f..9da59dcca 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -71,6 +71,10 @@ and `water=*`. | Column | Value | | -------: | ------- | | `id` | `6bbb5fe5-bf26-3efa-b120-0a7079b60840` | +| `bbox.xmin` | `-177.03179931640625` | +| `bbox.xmax` | `-177.0317840576172` | +| `bbox.ymin` | `-84.93480682373047` | +| `bbox.ymax` | `-84.9347915649414` | | `geometry` | `POINT (-177.031799 -84.934793)` | | `theme` | `base` | | `type` | `water` | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index dd0b6f47c..275cbc954 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -66,6 +66,10 @@ model of the building. | Column | Value | | -------: | ------- | | `id` | `148f35b1-7bc1-4180-9280-10d39b13883b` | +| `bbox.xmin` | `-176.643798828125` | +| `bbox.xmax` | `-176.64349365234375` | +| `bbox.ymin` | `-43.9938850402832` | +| `bbox.ymax` | `-43.993709564208984` | | `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | | `theme` | `buildings` | | `type` | `building` | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index b4c75b78e..2fb54b64a 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -67,6 +67,10 @@ vertical dimension. | Column | Value | | -------: | ------- | | `id` | `19412d64-51ac-3d6a-ac2f-8a8c8b91bb60` | +| `bbox.xmin` | `-73.24630737304688` | +| `bbox.xmax` | `-73.24613952636719` | +| `bbox.ymin` | `-39.81101608276367` | +| `bbox.ymax` | `-39.81088638305664` | | `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | | `theme` | `buildings` | | `type` | `building_part` | diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index de28bd77b..ab36ba797 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -84,6 +84,10 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `names.primary` | `Sia'atoutai` | | `names.common` | `null` | | `id` | `350e85f6-68ba-4114-9906-c2844815988b` | +| `bbox.xmin` | `-175.25515747070312` | +| `bbox.xmax` | `-175.255126953125` | +| `bbox.ymin` | `-21.1353702545166` | +| `bbox.ymax` | `-21.13536834716797` | | `geometry` | `POINT (-175.2551522 -21.1353686)` | | `theme` | `divisions` | | `type` | `division` | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index f7c9b0abc..dc0821a2c 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -64,6 +64,10 @@ belongs to. | `names.common` | `null` | | `names.rules` | `null` | | `id` | `eb9b112f-ec3c-47f7-b519-6f9f2e6fc2bd` | +| `bbox.xmin` | `-174.97535705566406` | +| `bbox.xmax` | `-174.90040588378906` | +| `bbox.ymin` | `-21.473018646240234` | +| `bbox.ymax` | `-21.283489227294922` | | `geometry` | `MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -174.9...` | | `theme` | `divisions` | | `type` | `division_area` | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index 14186daf9..aea2f0793 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -51,6 +51,10 @@ Some boundaries may be disputed by the divisions on one or both sides. | Column | Value | | -------: | ------- | | `id` | `2bdf68e4-860d-3d8c-a472-ccf439a5302a` | +| `bbox.xmin` | `-147.06483459472656` | +| `bbox.xmax` | `-147.04847717285156` | +| `bbox.ymin` | `-15.4231538772583` | +| `bbox.ymax` | `-15.151169776916504` | | `geometry` | `LINESTRING (-147.064823 -15.4231537, -147.0519131 -15.2885069, -147.048482 -15.1511701)` | | `theme` | `divisions` | | `type` | `division_boundary` | diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index 48e93affc..a835d43dc 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -76,6 +76,10 @@ Places are point representations of real-world facilities, businesses, services, | Column | Value | | -------: | ------- | | `id` | `99003ee6-e75b-4dd6-8a8a-53a5a716c50d` | +| `bbox.xmin` | `-150.46875` | +| `bbox.xmax` | `-150.46875` | +| `bbox.ymin` | `-79.17134094238281` | +| `bbox.ymax` | `-79.17133331298828` | | `geometry` | `POINT (-150.46875 -79.1713346)` | | `theme` | `places` | | `type` | `place` | diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index ae6af6c2c..49d6200fa 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -32,6 +32,10 @@ Connectors are compatible with GeoJSON Point features. | Column | Value | | -------: | ------- | | `id` | `39542bee-230f-4b91-b7e5-a9b58e0c59b1` | +| `bbox.xmin` | `-176.54730224609375` | +| `bbox.xmax` | `-176.54727172851562` | +| `bbox.ymin` | `-43.96794891357422` | +| `bbox.ymax` | `-43.96794128417969` | | `geometry` | `POINT (-176.5472979 -43.9679472)` | | `theme` | `transportation` | | `type` | `connector` | diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index 27a58e4bc..994b5622f 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -122,6 +122,10 @@ sidebar_position: 1 | Column | Value | | -------: | ------- | | `id` | `1bc62f3b-08b5-42b8-89fe-36f685f60455` | +| `bbox.xmin` | `-176.5650177001953` | +| `bbox.xmax` | `-176.56361389160156` | +| `bbox.ymin` | `-43.954410552978516` | +| `bbox.ymax` | `-43.953250885009766` | | `geometry` | `LINESTRING (-176.5636191 -43.954404, -176.5643637 -43.9538145, -176.5647264 -43.9535274, -176.564994...` | | `theme` | `transportation` | | `type` | `segment` | From 8ba7236607cfc74ef48589bcf00e86e92f6d38f8 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Wed, 4 Mar 2026 10:29:31 -0800 Subject: [PATCH 3/4] Add newline before inline constraints Also makes lists of referenced types that contain 'duplicates' (same name, different module) stable --- docs/schema/reference/addresses/address.md | 14 +++++++------- .../reference/addresses/types/address_level.md | 2 +- docs/schema/reference/base/bathymetry.md | 2 +- docs/schema/reference/base/infrastructure.md | 2 +- docs/schema/reference/base/land.md | 2 +- docs/schema/reference/base/land_cover.md | 2 +- docs/schema/reference/base/land_use.md | 2 +- docs/schema/reference/base/water.md | 6 +++--- docs/schema/reference/buildings/building.md | 16 ++++++++-------- docs/schema/reference/buildings/building_part.md | 16 ++++++++-------- docs/schema/reference/core/name_rule.md | 2 +- docs/schema/reference/core/names.md | 2 +- docs/schema/reference/core/perspectives.md | 2 +- .../core/scoping/vehicle_height_selector.md | 2 +- .../core/scoping/vehicle_length_selector.md | 2 +- .../core/scoping/vehicle_weight_selector.md | 2 +- .../core/scoping/vehicle_width_selector.md | 2 +- docs/schema/reference/divisions/division.md | 14 +++++++------- docs/schema/reference/divisions/division_area.md | 10 +++++----- .../reference/divisions/division_boundary.md | 14 +++++++------- .../reference/divisions/types/hierarchy_item.md | 2 +- docs/schema/reference/places/place.md | 12 ++++++------ docs/schema/reference/places/types/categories.md | 2 +- docs/schema/reference/places/types/taxonomy.md | 4 ++-- .../schema/reference/transportation/connector.md | 2 +- docs/schema/reference/transportation/segment.md | 4 ++-- .../types/access_restriction_rule.when.md | 12 ++++++------ .../transportation/types/connector_reference.md | 2 +- .../transportation/types/destination_labels.md | 2 +- .../transportation/types/destination_rule.md | 4 ++-- .../types/prohibited_transition_rule.md | 2 +- .../types/prohibited_transition_rule.when.md | 12 ++++++------ .../transportation/types/route_reference.md | 8 ++++---- .../transportation/types/speed_limit_rule.md | 2 +- .../types/speed_limit_rule.when.md | 12 ++++++------ 35 files changed, 99 insertions(+), 99 deletions(-) diff --git a/docs/schema/reference/addresses/address.md b/docs/schema/reference/addresses/address.md index dc1475fa0..97ab997ce 100644 --- a/docs/schema/reference/addresses/address.md +++ b/docs/schema/reference/addresses/address.md @@ -25,7 +25,7 @@ provinces, state, and regions, and similar addressing units are found. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the address. Addresses are point geometries.
*Allowed geometry types: Point* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the address. Addresses are point geometries.

*Allowed geometry types: Point* | | `theme` | `"addresses"` | | | `type` | `"address"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -37,14 +37,14 @@ provinces, state, and regions, and similar addressing units are found. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*, region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For example, in the United States, we expect two items: the state, and the locality or municipality within the state. Other countries might have as few as one, or even three or more.

When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted.
*Minimum length: 1*
*Maximum length: 5* | +| `address_levels[]` | `list<`[`AddressLevel`](types/address_level.md)`>` (optional) | Names of the sub-country addressing areas the address belongs to, including the city or locality, in descending order of generality.

The list is sorted so that the highest, or most general, level comes first (*e.g.*, region) and the lowest, or most particular level, comes last (*e.g.*, city or town).

The number of items in this list and their meaning is country-dependent. For example, in the United States, we expect two items: the state, and the locality or municipality within the state. Other countries might have as few as one, or even three or more.

When a specific level that is required for a country is not known. most likely because the data provider has not supplied it and we have not derived it from another source, the list item corresponding to that level must be present, but its `value` field should be omitted.

*Minimum length: 1*
*Maximum length: 5* | | `address_levels[].value` | [`StrippedString`](../system/stripped_string.md) (optional) | A string without leading or trailing whitespace | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | The country the address belongs to, as an ISO 3166-1 alpha-2 country code. | -| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use.
*Minimum length: 1* | -| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana* is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje.
*Minimum length: 1* | -| `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code.
*Minimum length: 1* | -| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated.
*Minimum length: 1* | -| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a campus, this field names the specific secondary unit being addressed.
*Minimum length: 1* | +| `number` | [`StrippedString`](../system/stripped_string.md) (optional) | The house number.

This field does not necessarily contain an integer or even a number. Values such as "74B", "189 1/2", and "208.5", where the non-integer or non-number part is part of the house number, not a unit number, are in common use.

*Minimum length: 1* | +| `postal_city` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal authority designated city name, if applicable.

In some countries or regions, a mailing address may need to specify a different city name than the city that actually contains the address coordinates. This optional field can be used to specify the alternate city name to use.

For example:

- The postal city for the US address *716 East County Road, Winchester, Indiana* is Ridgeville. - The postal city for the Slovenian address *Tomaj 71, 6221 Tomaj, Slovenia* is Dutovlje.

*Minimum length: 1* | +| `postcode` | [`StrippedString`](../system/stripped_string.md) (optional) | The postal code.

*Minimum length: 1* | +| `street` | [`StrippedString`](../system/stripped_string.md) (optional) | The street name.

The street name can include a type (*e.g.*, "Street" or "St", "Boulevard" or "Blvd", *etc.*) and a directional (*e.g.*, "NW" or "Northwest", "S" or "Sud"). Both type and directional, if present, may be either a prefix or a suffix to the primary name. They may either be fully spelled-out or abbreviated.

*Minimum length: 1* | +| `unit` | [`StrippedString`](../system/stripped_string.md) (optional) | The secondary address unit designator.

In the case where the primary street address is divided into secondary units, which may be apartments, floors, or even buildings if the primary street address is a campus, this field names the specific secondary unit being addressed.

*Minimum length: 1* | ## Examples diff --git a/docs/schema/reference/addresses/types/address_level.md b/docs/schema/reference/addresses/types/address_level.md index 8380083eb..b0762021c 100644 --- a/docs/schema/reference/addresses/types/address_level.md +++ b/docs/schema/reference/addresses/types/address_level.md @@ -19,7 +19,7 @@ countries and regions, address levels do not necessarily correspond to administr | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | A string without leading or trailing whitespace
*Minimum length: 1* | +| `value` | [`StrippedString`](../../system/stripped_string.md) (optional) | A string without leading or trailing whitespace

*Minimum length: 1* | ## Used By diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index 3cf6366e6..a34860b82 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -13,7 +13,7 @@ lake beds or ocean floors. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the underwater area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the underwater area, which may be a polygon or multi-polygon.

*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"base"` | | | `type` | `"bathymetry"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index b303adc61..b00630af3 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -13,7 +13,7 @@ such as bridges, airports, runways, aerialways, communication towers, and power | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the infrastructure feature, which may be a point, line string, polygon, or multi-polygon.

*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"infrastructure"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index 238ebb7c3..8e8743abc 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -23,7 +23,7 @@ TODO: Update this description when the relationship to `land_cover` is better un | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land feature, which may be a point, line string, polygon, or multi-polygon.

*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"land"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index ce538162e..e7e3b7758 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -20,7 +20,7 @@ TODO: Explain relationship to `Land` features. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the covered land area, which may be a polygon or multi-polygon.
*Allowed geometry types: MultiPolygon, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Shape of the covered land area, which may be a polygon or multi-polygon.

*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"base"` | | | `type` | `"land_cover"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index 773c5b014..9af087060 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -18,7 +18,7 @@ TODO: Explain relationship to `Land` features. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the land use area, which may be a point, line string, polygon, or multi-polygon.

*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"land_use"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index 9da59dcca..e09c46bb2 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -34,7 +34,7 @@ and `water=*`. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon.
*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Geometry of the water feature, which may be a point, line string, polygon, or multi-polygon.

*Allowed geometry types: LineString, MultiPolygon, Point, Polygon* | | `theme` | `"base"` | | | `type` | `"water"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -48,8 +48,8 @@ and `water=*`. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `class` | [`WaterClass`](types/water_class.md) (optional) | | | `subtype` | [`WaterSubtype`](types/water_subtype.md) (optional) | | -| `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently
*`strict=True`* | -| `is_salt` | `boolean` (optional) | Whether the water body contains salt water
*`strict=True`* | +| `is_intermittent` | `boolean` (optional) | Whether the water body exists intermittently, not permanently

*`strict=True`* | +| `is_salt` | `boolean` (optional) | Whether the water body contains salt water

*`strict=True`* | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index 275cbc954..aed2322f2 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -18,7 +18,7 @@ model of the building. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | The building's footprint or roofprint (if traced from aerial/satellite imagery).
*Allowed geometry types: MultiPolygon, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The building's footprint or roofprint (if traced from aerial/satellite imagery).

*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"buildings"` | | | `type` | `"building"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -32,7 +32,7 @@ model of the building. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`BuildingSubtype`](types/building_subtype.md) (optional) | A broad classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built purpose, the current use should be specified. For example, a building built as a train station but later converted into a shopping mall would have the value `"commercial"` rather than `"transportation"`. | | `class` | [`BuildingClass`](types/building_class.md) (optional) | A more specific classification of the current use and purpose of the building.

If the current use of the building no longer accords with the original built purpose, the current use should be specified. | -| `has_parts` | `boolean` (optional) | Whether the building has associated building part features
*`strict=True`* | +| `has_parts` | `boolean` (optional) | Whether the building has associated building part features

*`strict=True`* | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | @@ -46,17 +46,17 @@ model of the building. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | -| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.
*`strict=True`* | -| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.
*`> 0`* | -| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.
*`> 0`* | +| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.

*`> 0`* | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.

*`strict=True`* | +| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.

*`> 0`* | +| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.

*`> 0`* | | `min_height` | [`float64`](../system/primitive/primitives.md) (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | -| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | +| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.

*`> 0`* | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | | `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | -| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | +| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees

*`≥ 0`*
*`< 360`* | | `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index 2fb54b64a..a8f0d8a76 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -21,7 +21,7 @@ vertical dimension. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | The footprint or roofprint of the building part.
*Allowed geometry types: MultiPolygon, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The footprint or roofprint of the building part.

*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"buildings"` | | | `type` | `"building_part"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -33,7 +33,7 @@ vertical dimension. | `sources[].update_time` | `datetime` (optional) | Last update time of the source data record. | | `sources[].confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | Confidence value from the source dataset.

This is a value between 0.0 and 1.0 and is particularly relevant for ML-derived data. | | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | -| `building_id` | [`Id`](../system/ref/id.md) | The building to which this part belongs
*References [`Building`](building.md) (belongs to)* | +| `building_id` | [`Id`](../system/ref/id.md) | The building to which this part belongs

*References [`Building`](building.md) (belongs to)* | | `names` | [`Names`](../core/names.md) (optional) | | | `names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | | `names.common` | [`CommonNames`](../core/common_names.md) (map, optional) | | @@ -47,17 +47,17 @@ vertical dimension. | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | -| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.
*`> 0`* | -| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.
*`strict=True`* | -| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.
*`> 0`* | -| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.
*`> 0`* | +| `height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the building or part in meters.

This is the distance from the lowest point to the highest point.

*`> 0`* | +| `is_underground` | `boolean` (optional) | Whether the entire building or part is completely below ground.

The underground flag is useful for display purposes. Buildings and building parts that are entirely below ground can be styled differently or omitted from the rendered image.

This flag is conceptually different from the `level` field, which indicates relative z-ordering and, notably, can be negative even if the building is entirely above-ground.

*`strict=True`* | +| `num_floors` | [`int32`](../system/primitive/primitives.md) (optional) | Number of above-ground floors of the building or part.

*`> 0`* | +| `num_floors_underground` | [`int32`](../system/primitive/primitives.md) (optional) | Number of below-ground floors of the building or part.

*`> 0`* | | `min_height` | [`float64`](../system/primitive/primitives.md) (optional) | Altitude above ground where the bottom of the building or building part starts.

If present, this value indicates that the lowest part of the building or building part starts is above ground level. | -| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.
*`> 0`* | +| `min_floor` | [`int32`](../system/primitive/primitives.md) (optional) | Start floor of this building or part.

If present, this value indicates that the building or part is "floating" and its bottom-most floor is above ground level, usually because it is part of a larger building in which some parts do reach down to ground level. An example is a building that has an entry road or driveway at ground level into an interior courtyard, where part of the building bridges above the entry road. This property may sometimes be populated when `min_height` is missing and in these cases can be used as a proxy for `min_height`.

*`> 0`* | | `facade_color` | [`HexColor`](../system/hex_color.md) (optional) | Facade color in `#rgb` or `#rrggbb` hex notation | | `facade_material` | [`FacadeMaterial`](types/facade_material.md) (optional) | Outer surface material of the facade | | `roof_material` | [`RoofMaterial`](types/roof_material.md) (optional) | Outer surface material of the roof | | `roof_shape` | [`RoofShape`](types/roof_shape.md) (optional) | Shape of the roof | -| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees
*`≥ 0`*
*`< 360`* | +| `roof_direction` | [`float64`](../system/primitive/primitives.md) (optional) | Bearing of the roof ridge line in degrees

*`≥ 0`*
*`< 360`* | | `roof_orientation` | [`RoofOrientation`](types/roof_orientation.md) (optional) | Orientation of the roof shape relative to the footprint shape | | `roof_color` | [`HexColor`](../system/hex_color.md) (optional) | The roof color in `#rgb` or `#rrggbb` hex notation | | `roof_height` | [`float64`](../system/primitive/primitives.md) (optional) | Height of the roof in meters.

This is the distance from the base of the roof to its highest point. | diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md index 463556de1..0662516e2 100644 --- a/docs/schema/reference/core/name_rule.md +++ b/docs/schema/reference/core/name_rule.md @@ -18,7 +18,7 @@ Examples might include: | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value.
*Minimum length: 1* | +| `value` | [`StrippedString`](../system/stripped_string.md) | The actual name value.

*Minimum length: 1* | | `variant` | [`NameVariant`](name_variant.md) | The name variant for this name rule. | | `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md index 0fadd0c17..ef525fffa 100644 --- a/docs/schema/reference/core/names.md +++ b/docs/schema/reference/core/names.md @@ -6,7 +6,7 @@ Multilingual names container. | Name | Type | Description | | -----: | :----: | ------------- | -| `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name.
*Minimum length: 1* | +| `primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name.

*Minimum length: 1* | | `common` | [`CommonNames`](common_names.md) (map, optional) | | | `rules[]` | `list<`[`NameRule`](name_rule.md)`>` (optional) | Rules for names that cannot be specified in the simple common names property. These rules can cover other name variants such as official, alternate, and short; and they can optionally include geometric scoping (linear referencing) and side-of-road scoping for complex cases. | | `rules[].value` | [`StrippedString`](../system/stripped_string.md) | The actual name value. | diff --git a/docs/schema/reference/core/perspectives.md b/docs/schema/reference/core/perspectives.md index d323e5cdf..a735e9f70 100644 --- a/docs/schema/reference/core/perspectives.md +++ b/docs/schema/reference/core/perspectives.md @@ -7,7 +7,7 @@ Political perspectives container. | Name | Type | Description | | -----: | :----: | ------------- | | `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_height_selector.md b/docs/schema/reference/core/scoping/vehicle_height_selector.md index 82b561ba0..ba56f33d7 100644 --- a/docs/schema/reference/core/scoping/vehicle_height_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_height_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their height. | -----: | :----: | ------------- | | `dimension` | `"height"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle height selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle height selection threshold in the given `unit`

*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Height unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_length_selector.md b/docs/schema/reference/core/scoping/vehicle_length_selector.md index 80e8c2792..5a6e1c017 100644 --- a/docs/schema/reference/core/scoping/vehicle_length_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_length_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their length. | -----: | :----: | ------------- | | `dimension` | `"length"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle length selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle length selection threshold in the given `unit`

*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Length unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_weight_selector.md b/docs/schema/reference/core/scoping/vehicle_weight_selector.md index 6e6c73180..3e42bdce1 100644 --- a/docs/schema/reference/core/scoping/vehicle_weight_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_weight_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their weight. | -----: | :----: | ------------- | | `dimension` | `"weight"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle weight selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle weight selection threshold in the given `unit`

*`≥ 0`* | | `unit` | [`WeightUnit`](../weight_unit.md) | Weight unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/core/scoping/vehicle_width_selector.md b/docs/schema/reference/core/scoping/vehicle_width_selector.md index 084f2e6df..f86e41b3b 100644 --- a/docs/schema/reference/core/scoping/vehicle_width_selector.md +++ b/docs/schema/reference/core/scoping/vehicle_width_selector.md @@ -8,7 +8,7 @@ Selects vehicles based on their width. | -----: | :----: | ------------- | | `dimension` | `"width"` | | | `comparison` | [`VehicleRelation`](vehicle_relation.md) | | -| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle width selection threshold in the given `unit`
*`≥ 0`* | +| `value` | [`float64`](../../system/primitive/primitives.md) | Vehicle width selection threshold in the given `unit`

*`≥ 0`* | | `unit` | [`LengthUnit`](../length_unit.md) | Width unit in which `value` is expressed | ## Used By diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index ab36ba797..27e598dba 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -32,7 +32,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Approximate location of a position commonly associated with the real-world entity modeled by the division feature.
*Allowed geometry types: Point* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Approximate location of a position commonly associated with the real-world entity modeled by the division feature.

*Allowed geometry types: Point* | | `theme` | `"divisions"` | | | `type` | `"division"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -46,12 +46,12 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies[][]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `hierarchies[][]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `hierarchies[][].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `hierarchies[][].subtype` | [`PlaceType`](types/place_type.md) | | | `hierarchies[][].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | -| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions.
*Minimum length: 1*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | +| `parent_division_id` | [`Id`](../system/ref/id.md) (optional) | Division ID of this division's parent division.

Not allowed for top-level divisions (countries) and required for all other divisions.

The default parent division is the parent division as seen from the default political perspective, if there is one, and is otherwise chosen somewhat arbitrarily. The hierarchies property can be used to inspect the exhaustive list of parent divisions.

*Minimum length: 1*

*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.

*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `class` | [`DivisionClass`](types/division_class.md) (optional) | | | `local_type` | [`CommonNames`](../core/common_names.md) (map, optional) | Local name for the subtype property, optionally localized.

For example, the Canadian province of Quebec has the subtype 'region', but in the local administrative hierarchy it is referred to as a 'province'. Similarly, the Canadian Yukon territory also has subtype 'region', but is locally called a 'territory'.

This property is localized using a standard Overture names structure. So for example, in Switzerland the top-level administrative subdivision corresponding to subtype 'region' is the canton, which is may be translated in each of Switzerland's official languages as, 'canton' in French, 'kanton' in German, 'cantone' in Italian, and 'chantun' in Romansh. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The region value for the United States is omitted. - The region value for the U.S. state of New York is 'US-NY'. - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | @@ -60,9 +60,9 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | | `norms` | [`Norms`](types/division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | -| `population` | [`int32`](../system/primitive/primitives.md) (optional) | Population of the division
*`≥ 0`* | -| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `population` | [`int32`](../system/primitive/primitives.md) (optional) | Population of the division

*`≥ 0`* | +| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | | `wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index dc0821a2c..451ca935c 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -30,7 +30,7 @@ belongs to. | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | The area covered by the division with which this area feature is associated
*Allowed geometry types: MultiPolygon, Polygon* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | The area covered by the division with which this area feature is associated

*Allowed geometry types: MultiPolygon, Polygon* | | `theme` | `"divisions"` | | | `type` | `"division_area"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -44,12 +44,12 @@ belongs to. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `class` | [`AreaClass`](types/division_area/area_class.md) | | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to.
*References [`Division`](division.md) (belongs to)* | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `division_id` | [`Id`](../system/ref/id.md) | Division ID of the division this area belongs to.

*References [`Division`](division.md) (belongs to)* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the division this area belongs to. | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the division this area belongs to. | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.

*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | ## Constraints diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index aea2f0793..fe5411a2e 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -14,7 +14,7 @@ Some boundaries may be disputed by the divisions on one or both sides. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Boundary line or lines
*Allowed geometry types: LineString, MultiLineString* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Boundary line or lines

*Allowed geometry types: LineString, MultiLineString* | | `theme` | `"divisions"` | | | `type` | `"division_boundary"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -28,13 +28,13 @@ Some boundaries may be disputed by the divisions on one or both sides. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | | `class` | [`BoundaryClass`](types/division_boundary/boundary_class.md) | | -| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.
*`strict=True`*
*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.
*References [`Division`](division.md) (boundary of)*
*Minimum length: 2*
*Maximum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities.
*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | +| `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | +| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.

*References [`Division`](division.md) (boundary of)*
*Minimum length: 2*
*Maximum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities.

*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | -| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.
*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | -| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property.

This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other.
*`strict=True`* | +| `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.

*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | +| `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property.

This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other.

*`strict=True`* | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | | `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | diff --git a/docs/schema/reference/divisions/types/hierarchy_item.md b/docs/schema/reference/divisions/types/hierarchy_item.md index 40e749563..53ef5641d 100644 --- a/docs/schema/reference/divisions/types/hierarchy_item.md +++ b/docs/schema/reference/divisions/types/hierarchy_item.md @@ -8,7 +8,7 @@ One division in a hierarchy. | -----: | :----: | ------------- | | `division_id` | [`DivisionId`](division_id.md) | ID of the division | | `subtype` | [`PlaceType`](place_type.md) | | -| `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division
*Minimum length: 1* | +| `name` | [`StrippedString`](../../system/stripped_string.md) | Primary name of the division

*Minimum length: 1* | ## Used By diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index a835d43dc..b9539d8ee 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -12,7 +12,7 @@ Places are point representations of real-world facilities, businesses, services, | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the place. Places are point geometries.
*Allowed geometry types: Point* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the place. Places are point geometries.

*Allowed geometry types: Point* | | `theme` | `"places"` | | | `type` | `"place"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -34,10 +34,10 @@ Places are point representations of real-world facilities, businesses, services, | `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | | `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | | `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist anymore and will always be paired with an `operating_status` of `"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on which to estimate our confidence level. | -| `websites` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The websites of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `socials` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The social media URLs of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `emails` | `list<`[`EmailStr`](../pydantic/networks/email_str.md)`>` (optional) | The email addresses of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `websites` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The websites of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `socials` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The social media URLs of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `emails` | `list<`[`EmailStr`](../pydantic/networks/email_str.md)`>` (optional) | The email addresses of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `brand` | [`Brand`](types/brand.md) (optional) | The brand associated with the place. | | `brand.names` | [`Names`](../core/names.md) (optional) | | | `brand.names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -52,7 +52,7 @@ Places are point representations of real-world facilities, businesses, services, | `brand.names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `brand.names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | -| `addresses[]` | `list<`[`Address`](types/address.md)`>` (optional) | The address or addresses of the place
*Minimum length: 1* | +| `addresses[]` | `list<`[`Address`](types/address.md)`>` (optional) | The address or addresses of the place

*Minimum length: 1* | | `addresses[].freeform` | `string` (optional) | Free-form address that contains street name, house number and other address info | | `addresses[].locality` | `string` (optional) | City, town, or neighborhood component of the place address | | `addresses[].postcode` | `string` (optional) | Postal code component of the place address | diff --git a/docs/schema/reference/places/types/categories.md b/docs/schema/reference/places/types/categories.md index a06cbc94e..cbc13a334 100644 --- a/docs/schema/reference/places/types/categories.md +++ b/docs/schema/reference/places/types/categories.md @@ -9,7 +9,7 @@ Complete list is available on GitHub: [https://github.com/OvertureMaps/schema/bl | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.
*All items must be unique. (`UniqueItemsConstraint`)* | +| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.

*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/places/types/taxonomy.md b/docs/schema/reference/places/types/taxonomy.md index 6a408e883..1b45af640 100644 --- a/docs/schema/reference/places/types/taxonomy.md +++ b/docs/schema/reference/places/types/taxonomy.md @@ -9,8 +9,8 @@ Provides the primary classification, full hierarchy path, and alternate categori | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/transportation/connector.md b/docs/schema/reference/transportation/connector.md index 49d6200fa..6230f2ba7 100644 --- a/docs/schema/reference/transportation/connector.md +++ b/docs/schema/reference/transportation/connector.md @@ -14,7 +14,7 @@ Connectors are compatible with GeoJSON Point features. | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the connector
*Allowed geometry types: Point* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Position of the connector

*Allowed geometry types: Point* | | `theme` | `"transportation"` | | | `type` | `"connector"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index 994b5622f..6669bae47 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -10,7 +10,7 @@ sidebar_position: 1 | -----: | :----: | ------------- | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | | `bbox` | [`bbox`](../system/primitive/geometry.md) (optional) | An optional bounding box for the feature | -| `geometry` | [`geometry`](../system/primitive/geometry.md) | Segment centerline
*Allowed geometry types: LineString* | +| `geometry` | [`geometry`](../system/primitive/geometry.md) | Segment centerline

*Allowed geometry types: LineString* | | `theme` | `"transportation"` | | | `type` | `"segment"` | | | `version` | [`FeatureVersion`](../core/feature_version.md) | | @@ -33,7 +33,7 @@ sidebar_position: 1 | `access_restrictions[].when.using` | `list<`[`PurposeOfUse`](../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.recognized` | `list<`[`RecognizedStatus`](../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to. | | `access_restrictions[].when.vehicle` | [`VehicleAxleCountSelector`](../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to. | -| `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector.
*Minimum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `connectors[]` | `list<`[`ConnectorReference`](types/connector_reference.md)`>` (optional) | List of connectors which this segment is physically connected to and their relative location. Each connector is a possible routing decision point, meaning it defines a place along the segment in which there is possibility to transition to other segments which share the same connector.

*Minimum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | | `connectors[].connector_id` | [`Id`](../system/ref/id.md) | A unique identifier | | `connectors[].at` | [`LinearlyReferencedPosition`](../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | | `level_rules[]` | [`LevelRules`](types/level_rules.md) (list, optional) | Defines the Z-order, i.e. stacking order, of the road segment. | diff --git a/docs/schema/reference/transportation/types/access_restriction_rule.when.md b/docs/schema/reference/transportation/types/access_restriction_rule.when.md index 7937f7c1f..a28cf64b1 100644 --- a/docs/schema/reference/transportation/types/access_restriction_rule.when.md +++ b/docs/schema/reference/transportation/types/access_restriction_rule.when.md @@ -6,12 +6,12 @@ Scopes for AccessRestrictionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MO | Name | Type | Description | | -----: | :----: | ------------- | -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing AccessRestrictionRule applies to.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing AccessRestrictionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing AccessRestrictionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing AccessRestrictionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing AccessRestrictionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing AccessRestrictionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints diff --git a/docs/schema/reference/transportation/types/connector_reference.md b/docs/schema/reference/transportation/types/connector_reference.md index 17d9c7092..32a547d74 100644 --- a/docs/schema/reference/transportation/types/connector_reference.md +++ b/docs/schema/reference/transportation/types/connector_reference.md @@ -7,7 +7,7 @@ segment. | Name | Type | Description | | -----: | :----: | ------------- | -| `connector_id` | [`Id`](../../system/ref/id.md) | A unique identifier
*References [`Connector`](../connector.md) (connects to)* | +| `connector_id` | [`Id`](../../system/ref/id.md) | A unique identifier

*References [`Connector`](../connector.md) (connects to)* | | `at` | [`LinearlyReferencedPosition`](../../core/scoping/linearly_referenced_position.md) (optional) | The linearly-referenced position on the geometry, specified as a percentage displacement from the start of the geometry, that the containing ConnectorReference applies to. | ## Used By diff --git a/docs/schema/reference/transportation/types/destination_labels.md b/docs/schema/reference/transportation/types/destination_labels.md index 7b22c70bf..578aaaace 100644 --- a/docs/schema/reference/transportation/types/destination_labels.md +++ b/docs/schema/reference/transportation/types/destination_labels.md @@ -6,7 +6,7 @@ The type of object of the destination label. | Name | Type | Description | | -----: | :----: | ------------- | -| `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached
*Minimum length: 1* | +| `value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached

*Minimum length: 1* | | `type` | [`DestinationLabelType`](destination_label_type.md) | | ## Used By diff --git a/docs/schema/reference/transportation/types/destination_rule.md b/docs/schema/reference/transportation/types/destination_rule.md index 79cfbe92d..34cab4b55 100644 --- a/docs/schema/reference/transportation/types/destination_rule.md +++ b/docs/schema/reference/transportation/types/destination_rule.md @@ -8,10 +8,10 @@ | `to_connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection on the segment identified by 'to_segment_id' to transition to for reaching the destination(s). | | `to_segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment to transition to reach the destination(s) labeled on the sign or marking. | | `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel on the segment identified by 'to_segment_id' that leads to the destination. | -| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | +| `labels[]` | `list<`[`DestinationLabels`](destination_labels.md)`>` (optional) | Labeled destinations that can be reached by following the segment.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `labels`, `symbols` must be set* | | `labels[].value` | [`StrippedString`](../../system/stripped_string.md) | Names the object that is reached | | `labels[].type` | [`DestinationLabelType`](destination_label_type.md) | | -| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label.
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `labels`, `symbols` must be set* | +| `symbols` | `list<`[`DestinationSignSymbol`](destination_sign_symbol.md)`>` (optional) | A collection of symbols or icons present on the sign next to current destination label.

*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `labels`, `symbols` must be set* | | `when` | [`DestinationRule.When`](destination_rule.when.md) (optional) | Scope for DestinationRule: | | `when.heading` | [`Heading`](../../core/scoping/heading.md) | The heading, either forward or backward, that the containing DestinationRule applies to. | diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.md index 04905debe..40c3e9653 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.md @@ -4,7 +4,7 @@ | Name | Type | Description | | -----: | :----: | ------------- | -| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `sequence[]` | `list<`[`SequenceEntry`](sequence_entry.md)`>` | Ordered sequence of connector/segment pairs that it is prohibited to follow from this segment.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `sequence[].connector_id` | [`Id`](../../system/ref/id.md) | Identifies the point of physical connection between the previous segment in the sequence and the segment in this sequence entry. | | `sequence[].segment_id` | [`Id`](../../system/ref/id.md) | Identifies the segment that the previous segment in the sequence is physically connected to via the sequence entry's connector. | | `final_heading` | [`Heading`](../../core/scoping/heading.md) | Direction of travel that is prohibited on the destination segment of the sequence. | diff --git a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md index a15fe3020..0a6d14d65 100644 --- a/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md +++ b/docs/schema/reference/transportation/types/prohibited_transition_rule.when.md @@ -6,12 +6,12 @@ Scopes for ProhibitedTransitionRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL | Name | Type | Description | | -----: | :----: | ------------- | -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing ProhibitedTransitionRule applies to.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing ProhibitedTransitionRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing ProhibitedTransitionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing ProhibitedTransitionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing ProhibitedTransitionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing ProhibitedTransitionRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints diff --git a/docs/schema/reference/transportation/types/route_reference.md b/docs/schema/reference/transportation/types/route_reference.md index e20b7a7aa..e3a9f7c2d 100644 --- a/docs/schema/reference/transportation/types/route_reference.md +++ b/docs/schema/reference/transportation/types/route_reference.md @@ -6,10 +6,10 @@ Route reference with linear referencing support. | Name | Type | Description | | -----: | :----: | ------------- | -| `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route
*Minimum length: 1* | -| `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to
*Minimum length: 1* | -| `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route
*Minimum length: 1* | -| `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage
*Minimum length: 1* | +| `name` | [`StrippedString`](../../system/stripped_string.md) (optional) | Full name of the route

*Minimum length: 1* | +| `network` | [`StrippedString`](../../system/stripped_string.md) (optional) | Name of the highway system this route belongs to

*Minimum length: 1* | +| `ref` | [`StrippedString`](../../system/stripped_string.md) (optional) | Code or number used to reference the route

*Minimum length: 1* | +| `symbol` | [`StrippedString`](../../system/stripped_string.md) (optional) | URL or description of route signage

*Minimum length: 1* | | `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing RouteReference applies to. | diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.md b/docs/schema/reference/transportation/types/speed_limit_rule.md index 4ef7bab18..cad040b22 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.md @@ -12,7 +12,7 @@ An individual speed limit rule. | `min_speed` | [`Speed`](speed.md) (optional) | *At least one of `max_speed`, `min_speed` must be set* | | `min_speed.value` | [`SpeedValue`](speed_value.md) | Speed value | | `min_speed.unit` | [`SpeedUnit`](../../core/speed_unit.md) | | -| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor
*`strict=True`* | +| `is_max_speed_variable` | `boolean` (optional) | Indicates a variable speed corridor

*`strict=True`* | | `between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SpeedLimitRule applies to. | | `when` | [`SpeedLimitRule.When`](speed_limit_rule.when.md) (optional) | Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Scope.PURPOSE OF USE, Scope.RECOGNIZED STATUS and Scope.VEHICLE | | `when.heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to. | diff --git a/docs/schema/reference/transportation/types/speed_limit_rule.when.md b/docs/schema/reference/transportation/types/speed_limit_rule.when.md index 8b7aca70f..3d2431231 100644 --- a/docs/schema/reference/transportation/types/speed_limit_rule.when.md +++ b/docs/schema/reference/transportation/types/speed_limit_rule.when.md @@ -6,12 +6,12 @@ Scopes for SpeedLimitRule: Scope.HEADING, Scope.TEMPORAL, Scope.TRAVEL MODE, Sco | Name | Type | Description | | -----: | :----: | ------------- | -| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | -| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to.
*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*
*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `heading` | [`Heading`](../../core/scoping/heading.md) (optional) | The heading, either forward or backward, that the containing SpeedLimitRule applies to.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `during` | [`OpeningHours`](../../core/scoping/opening_hours.md) (optional) | The recurring time span, in the OpenStreetMap opening hours format, that the containing SpeedLimitRule applies to. For the OSM opening hours specification, see https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification.

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `mode` | `list<`[`TravelMode`](../../core/scoping/travel_mode.md)`>` (optional) | A list of one or more travel modes, such as car, truck, or foot, that the containing SpeedLimitRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `using` | `list<`[`PurposeOfUse`](../../core/scoping/purpose_of_use.md)`>` (optional) | A list of one or more usage purposes, such as delivery or arrival at final destination, that the containing SpeedLimitRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `recognized` | `list<`[`RecognizedStatus`](../../core/scoping/recognized_status.md)`>` (optional) | A list of one or more recognized status values, such as employee or student, that the containing SpeedLimitRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | +| `vehicle` | [`VehicleAxleCountSelector`](../../core/scoping/vehicle_axle_count_selector.md) \| [`VehicleHeightSelector`](../../core/scoping/vehicle_height_selector.md) \| [`VehicleLengthSelector`](../../core/scoping/vehicle_length_selector.md) \| [`VehicleWeightSelector`](../../core/scoping/vehicle_weight_selector.md) \| [`VehicleWidthSelector`](../../core/scoping/vehicle_width_selector.md) (list, optional) | A list of one or more vehicle parameters that limit the vehicles the containing SpeedLimitRule applies to.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)*

*At least one of `heading`, `during`, `mode`, `using`, `recognized`, `vehicle` must be set* | ## Constraints From da7fa758c4f731026f9f4089d4f4950ead37d1af Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Wed, 4 Mar 2026 20:03:32 -0800 Subject: [PATCH 4/4] Sync with codegen fixes Truncation at 100 characters, proper list<> wrapping, proper dict display in examples --- docs/schema/reference/base/bathymetry.md | 2 +- docs/schema/reference/base/infrastructure.md | 9 ++------- docs/schema/reference/base/land.md | 6 ++---- docs/schema/reference/base/land_cover.md | 2 +- docs/schema/reference/base/land_use.md | 9 +++------ docs/schema/reference/base/water.md | 5 ++--- docs/schema/reference/buildings/building.md | 4 ++-- .../reference/buildings/building_part.md | 4 ++-- docs/schema/reference/core/name_rule.md | 2 +- docs/schema/reference/core/names.md | 2 +- docs/schema/reference/core/perspectives.md | 2 +- docs/schema/reference/divisions/division.md | 10 +++++----- .../reference/divisions/division_area.md | 4 ++-- .../reference/divisions/division_boundary.md | 6 +++--- docs/schema/reference/places/place.md | 18 +++++++++--------- docs/schema/reference/places/types/brand.md | 2 +- .../reference/places/types/categories.md | 2 +- docs/schema/reference/places/types/taxonomy.md | 4 ++-- .../schema/reference/transportation/segment.md | 4 ++-- 19 files changed, 43 insertions(+), 54 deletions(-) diff --git a/docs/schema/reference/base/bathymetry.md b/docs/schema/reference/base/bathymetry.md index a34860b82..ebc1fa9a8 100644 --- a/docs/schema/reference/base/bathymetry.md +++ b/docs/schema/reference/base/bathymetry.md @@ -41,7 +41,7 @@ lake beds or ocean floors. | `bbox.xmax` | `-170.05111694335938` | | `bbox.ymin` | `-77.9718246459961` | | `bbox.ymax` | `-75.64299774169922` | -| `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761566...` | +| `geometry` | `MULTIPOLYGON (((-170.71296928 -76.744313428, -170.719841483 -76.757076376, -170.731061124 -76.761...` | | `theme` | `base` | | `type` | `bathymetry` | | `version` | `0` | diff --git a/docs/schema/reference/base/infrastructure.md b/docs/schema/reference/base/infrastructure.md index b00630af3..9cc46ddee 100644 --- a/docs/schema/reference/base/infrastructure.md +++ b/docs/schema/reference/base/infrastructure.md @@ -38,7 +38,7 @@ such as bridges, airports, runways, aerialways, communication towers, and power | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | @@ -72,10 +72,5 @@ such as bridges, airports, runways, aerialways, communication towers, and power | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.description` | `1036 km to South Pole.` | -| `source_tags.information` | `route_marker` | -| `source_tags.note` | `The road continue in west side of the map` | -| `source_tags.start_date` | `2007` | -| `source_tags.tourism` | `information` | -| `source_tags.wikipedia` | `en:South Pole Traverse` | +| `source_tags` | `{"description": "1036 km to South Pole.", "information": "route_marker", "note": "The road contin...` | | `wikidata` | `Q800558` | diff --git a/docs/schema/reference/base/land.md b/docs/schema/reference/base/land.md index 8e8743abc..29bde9f17 100644 --- a/docs/schema/reference/base/land.md +++ b/docs/schema/reference/base/land.md @@ -48,7 +48,7 @@ TODO: Update this description when the relationship to `land_cover` is better un | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | @@ -82,7 +82,5 @@ TODO: Update this description when the relationship to `land_cover` is better un | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.natural` | `cliff` | -| `source_tags.ref:linz:place_id` | `12318` | -| `source_tags.wikipedia` | `en:Dismal Buttress` | +| `source_tags` | `{"natural": "cliff", "ref:linz:place_id": "12318", "wikipedia": "en:Dismal Buttress"}` | | `wikidata` | `Q5282342` | diff --git a/docs/schema/reference/base/land_cover.md b/docs/schema/reference/base/land_cover.md index e7e3b7758..4e9fbe907 100644 --- a/docs/schema/reference/base/land_cover.md +++ b/docs/schema/reference/base/land_cover.md @@ -48,7 +48,7 @@ TODO: Explain relationship to `Land` features. | `bbox.xmax` | `-179.99313354492188` | | `bbox.ymin` | `65.95172119140625` | | `bbox.ymax` | `65.96218872070312` | -| `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975172...` | +| `geometry` | `POLYGON ((-179.99877531181616 65.95172539425603, -179.99740705536922 65.95265577758867, -179.9975...` | | `theme` | `base` | | `type` | `land_cover` | | `version` | `0` | diff --git a/docs/schema/reference/base/land_use.md b/docs/schema/reference/base/land_use.md index 9af087060..66efbcb38 100644 --- a/docs/schema/reference/base/land_use.md +++ b/docs/schema/reference/base/land_use.md @@ -43,7 +43,7 @@ TODO: Explain relationship to `Land` features. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | @@ -59,7 +59,7 @@ TODO: Explain relationship to `Land` features. | `bbox.xmax` | `-176.56231689453125` | | `bbox.ymin` | `-43.96001052856445` | | `bbox.ymax` | `-43.95420837402344` | -| `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624297...` | +| `geometry` | `POLYGON ((-176.5623454 -43.9567812, -176.5627644 -43.9561272, -176.5626898 -43.9557432, -176.5624...` | | `theme` | `base` | | `type` | `land_use` | | `version` | `0` | @@ -77,8 +77,5 @@ TODO: Explain relationship to `Land` features. | `names.common` | `null` | | `names.rules` | `null` | | `level` | `null` | -| `source_tags.LINZ:source_version` | `V16` | -| `source_tags.attribution` | `http://wiki.osm.org/wiki/Attribution#LINZ` | -| `source_tags.leisure` | `golf_course` | -| `source_tags.source_ref` | `http://www.linz.govt.nz/topography/topo-maps/` | +| `source_tags` | `{"LINZ:source_version": "V16", "attribution": "http://wiki.osm.org/wiki/Attribution#LINZ", "leisu...` | | `wikidata` | `null` | diff --git a/docs/schema/reference/base/water.md b/docs/schema/reference/base/water.md index e09c46bb2..6001deb75 100644 --- a/docs/schema/reference/base/water.md +++ b/docs/schema/reference/base/water.md @@ -60,7 +60,7 @@ and `water=*`. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `source_tags` | [`SourceTags`](types/source_tags.md) (map, optional) | Key/value pairs imported directly from the source data without change.

This field provides access to raw OSM entity tags for features sourced from OpenStreetMap. | @@ -93,6 +93,5 @@ and `water=*`. | `names.primary` | `Thanksgiving Point` | | `names.common` | `null` | | `names.rules` | `null` | -| `source_tags.natural` | `cape` | -| `source_tags.ref:linz:place_id` | `13433` | +| `source_tags` | `{"natural": "cape", "ref:linz:place_id": "13433"}` | | `wikidata` | `Q33140589` | diff --git a/docs/schema/reference/buildings/building.md b/docs/schema/reference/buildings/building.md index aed2322f2..235cb1b1f 100644 --- a/docs/schema/reference/buildings/building.md +++ b/docs/schema/reference/buildings/building.md @@ -42,7 +42,7 @@ model of the building. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | @@ -70,7 +70,7 @@ model of the building. | `bbox.xmax` | `-176.64349365234375` | | `bbox.ymin` | `-43.9938850402832` | | `bbox.ymax` | `-43.993709564208984` | -| `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436992...` | +| `geometry` | `POLYGON ((-176.6435004 -43.9938042, -176.6435738 -43.9937107, -176.6437726 -43.9937913, -176.6436...` | | `theme` | `buildings` | | `type` | `building` | | `version` | `1` | diff --git a/docs/schema/reference/buildings/building_part.md b/docs/schema/reference/buildings/building_part.md index a8f0d8a76..0a5da58eb 100644 --- a/docs/schema/reference/buildings/building_part.md +++ b/docs/schema/reference/buildings/building_part.md @@ -43,7 +43,7 @@ vertical dimension. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `level` | [`Level`](../core/level.md) (optional) | Z-order of the feature where 0 is visual level | @@ -71,7 +71,7 @@ vertical dimension. | `bbox.xmax` | `-73.24613952636719` | | `bbox.ymin` | `-39.81101608276367` | | `bbox.ymax` | `-39.81088638305664` | -| `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -39....` | +| `geometry` | `POLYGON ((-73.2462509 -39.8108937, -73.2462755 -39.8109047, -73.246291 -39.8109182, -73.2463022 -...` | | `theme` | `buildings` | | `type` | `building_part` | | `version` | `0` | diff --git a/docs/schema/reference/core/name_rule.md b/docs/schema/reference/core/name_rule.md index 0662516e2..4b1c0308b 100644 --- a/docs/schema/reference/core/name_rule.md +++ b/docs/schema/reference/core/name_rule.md @@ -23,7 +23,7 @@ Examples might include: | `language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/core/names.md b/docs/schema/reference/core/names.md index ef525fffa..220658c59 100644 --- a/docs/schema/reference/core/names.md +++ b/docs/schema/reference/core/names.md @@ -14,7 +14,7 @@ Multilingual names container. | `rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `rules[].perspectives` | [`Perspectives`](perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `rules[].perspectives.mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `rules[].between` | [`LinearlyReferencedRange`](scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `rules[].side` | [`Side`](scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | diff --git a/docs/schema/reference/core/perspectives.md b/docs/schema/reference/core/perspectives.md index a735e9f70..b5e634d91 100644 --- a/docs/schema/reference/core/perspectives.md +++ b/docs/schema/reference/core/perspectives.md @@ -7,7 +7,7 @@ Political perspectives container. | Name | Type | Description | | -----: | :----: | ------------- | | `mode` | [`PerspectiveMode`](perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/divisions/division.md b/docs/schema/reference/divisions/division.md index 27e598dba..c0bce2d11 100644 --- a/docs/schema/reference/divisions/division.md +++ b/docs/schema/reference/divisions/division.md @@ -27,7 +27,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | @@ -46,7 +46,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `sources[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing SourceItem applies to. | | `subtype` | [`PlaceType`](types/place_type.md) | *`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`*
*`parent_division_id` is required when `subtype` ≠ `country`*
*`parent_division_id` is forbidden when `subtype` = `country`* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) | ISO 3166-1 alpha-2 country code of the country or country-like entity, that this division represents or belongs to.

If the entity this division represents has a country code, the country property contains it. If it does not, the country property contains the country code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The country value for the United States is 'US' - The country value for New York City is 'US' - The country value for Puerto Rico, a dependency of the US, is 'PR'. - The country value for San Juan, Puerto Rico is 'PR'.

If an entity has an internationally-recognized ISO 3166-1 alpha-2 country code, it should always be used. In cases where the schema requires the code but no internationally-recognized code is available, a synthetic code may be used provided it does not conflict with any internationally-recognized codes. | -| `hierarchies[][]` | [`Hierarchy`](types/hierarchy.md) (list) | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `hierarchies[][]` | `list<`[`Hierarchy`](types/hierarchy.md)`>` | Hierarchies in which this division participates.

Every division participates in at least one hierarchy. Most participate in only one. Some divisions may participate in more than one hierarchy, for example if they are claimed by different parent divisions from different political perspectives; or if there are other real-world reasons why the division or one of its ancestors has multiple parents.

The first hierarchy in the list is the default hierarchy, and the second-to-last entry in the default hierarchy (if there is such an entry) always corresponds to the `parent_division_id' property. The ordering of hierarchies after the first one is arbitrary.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `hierarchies[][].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `hierarchies[][].subtype` | [`PlaceType`](types/place_type.md) | | | `hierarchies[][].name` | [`StrippedString`](../system/stripped_string.md) | Primary name of the division | @@ -57,11 +57,11 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity this division represents or belongs to.

If the entity this division represents has a principal subdivision code, the region property contains it. If it does not, the region property contains the principal subdivision code of the first division encountered by traversing the parent_division_id chain to the root.

For example: - The region value for the United States is omitted. - The region value for the U.S. state of New York is 'US-NY'. - The region value for New York City is 'US-NY', which it inherits from the state of New York. - The region value for Puerto Rico is 'US-PR'. | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division is considered to be an accurate representation.

If this property is absent, then this division is not known to be disputed from any political perspective. Consequently, there is only one division feature representing the entire real world entity.

If this property is present, it means the division represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the division is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the division is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed divisions (with no `perspectives` property), and then adding to that first all divisions explicitly accepted by the country, and second all divisions not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `norms` | [`Norms`](types/division/norms.md) (optional) | Collects information about local norms and rules within the division that are generally useful for mapping and map-related use cases.

If the norms property or a desired sub-property of the norms property is missing on a division, but at least one of its ancestor divisions has the norms property and the desired sub-property, then the value from the nearest ancestor division may be assumed. | | `norms.driving_side` | [`Side`](../core/scoping/side.md) (optional) | Side of the road on which vehicles drive in the division. | | `population` | [`int32`](../system/primitive/primitives.md) (optional) | Population of the division

*`≥ 0`* | -| `capital_division_ids` | [`Id`](../system/ref/id.md) (list, optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `capital_division_ids` | `list<`[`Id`](../system/ref/id.md)`>` (optional) | Division IDs of this division's capital divisions. If present, this property will refer to the division IDs of the capital cities, county seats, etc. of a division.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `capital_of_divisions[]` | `list<`[`CapitalOfDivisionItem`](types/capital_of_division_item.md)`>` (optional) | Division IDs and subtypes of divisions this division is a capital of.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `capital_of_divisions[].division_id` | [`DivisionId`](types/division_id.md) | ID of the division | | `capital_of_divisions[].subtype` | [`PlaceType`](types/place_type.md) | | @@ -114,7 +114,7 @@ Examples include countries, provinces, cities, towns, neighborhoods, etc. | `hierarchies[0][3].name` | `Sia'atoutai` | | `parent_division_id` | `8730f0cc-d436-4f11-a7d3-49085813ef44` | | `class` | `village` | -| `local_type.en` | `village` | +| `local_type` | `{"en": "village"}` | | `region` | `TO-04` | | `perspectives` | `null` | | `norms` | `null` | diff --git a/docs/schema/reference/divisions/division_area.md b/docs/schema/reference/divisions/division_area.md index 451ca935c..17523fcc7 100644 --- a/docs/schema/reference/divisions/division_area.md +++ b/docs/schema/reference/divisions/division_area.md @@ -25,7 +25,7 @@ belongs to. | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `id` | [`Id`](../system/ref/id.md) | A feature ID. This may be an ID associated with the Global Entity Reference System (GERS) if—and-only-if the feature represents an entity that is part of GERS. | @@ -68,7 +68,7 @@ belongs to. | `bbox.xmax` | `-174.90040588378906` | | `bbox.ymin` | `-21.473018646240234` | | `bbox.ymax` | `-21.283489227294922` | -| `geometry` | `MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -174.9...` | +| `geometry` | `MULTIPOLYGON (((-174.9553949 -21.4730179, -174.9514163 -21.4719978, -174.9520108 -21.4681253, -17...` | | `theme` | `divisions` | | `type` | `division_area` | | `version` | `2` | diff --git a/docs/schema/reference/divisions/division_boundary.md b/docs/schema/reference/divisions/division_boundary.md index fe5411a2e..941a53916 100644 --- a/docs/schema/reference/divisions/division_boundary.md +++ b/docs/schema/reference/divisions/division_boundary.md @@ -30,14 +30,14 @@ Some boundaries may be disputed by the divisions on one or both sides. | `class` | [`BoundaryClass`](types/division_boundary/boundary_class.md) | | | `is_land` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents the land-clipped, non-maritime boundary. The geometry can be used for map rendering, cartographic display, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | | `is_territorial` | `boolean` (optional) | A boolean to indicate whether or not the feature geometry represents Overture's best approximation of this place's maritime boundary. For coastal places, this would tend to include the water area. The geometry can be used for data processing, reverse-geocoding, and similar purposes.

*`strict=True`*

*Exactly one of `is_land`, `is_territorial` must be `true`* | -| `division_ids` | [`Id`](../system/ref/id.md) (list) | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.

*References [`Division`](division.md) (boundary of)*
*Minimum length: 2*
*Maximum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `division_ids` | `list<`[`Id`](../system/ref/id.md)`>` | Identifies the two divisions to the left and right, respectively, of the boundary line. The left- and right-hand sides of the boundary are considered from the perspective of a person standing on the line facing in the direction in which the geometry is oriented, i.e. facing toward the end of the line.

The first array element is the Overture ID of the left division. The second element is the Overture ID of the right division.

*References [`Division`](division.md) (boundary of)*
*Minimum length: 2*
*Maximum length: 2*
*All items must be unique. (`UniqueItemsConstraint`)* | | `country` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (optional) | ISO 3166-1 alpha-2 country code of the country or country-like entity that both sides of the boundary share.

This property will be present on boundaries between two regions, counties, or similar entities within the same country, but will not be present on boundaries between two countries or country-like entities.

*`country` is required when `subtype` ≠ `country`*
*`country` is forbidden when `subtype` = `country`* | | `region` | [`RegionCode`](../system/region_code.md) (optional) | ISO 3166-2 principal subdivision code of the subdivision-like entity that both sides of the boundary share.

This property will be present on boundaries between two counties, localadmins or similar entities within the same principal subdivision, but will not be present on boundaries between different principal subdivisions or countries. | | `admin_level` | [`AdminLevel`](types/admin_level.md) (optional) | Integer representing the division's position in its country's administrative hierarchy, where lower numbers correspond to higher level administrative units.

*`admin_level` is required when `subtype` is one of: `county`, `macrocounty`, `region`, `macroregion`, `dependency`, `country`* | | `is_disputed` | `boolean` (optional) | Indicator if there are entities disputing this division boundary. Information about entities disputing this boundary should be included in perspectives property.

This property should also be true if boundary between two entities is unclear and this is "best guess". So having it true and no perspectives gives map creators reason not to fully trust the boundary, but use it if they have no other.

*`strict=True`* | | `perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which this division boundary is considered to be an accurate representation.

If this property is absent, then this boundary is not known to be disputed from any political perspective. Consequently, there is only one boundary feature representing the entire real world entity.

If this property is present, it means the boundary represents one of several alternative perspectives on the same real-world entity.

There are two modes of perspective:

1. `accepted_by` means the representation of the boundary is accepted by the listed entities and would be included on a map drawn from their perspective.

2. `disputed_by` means the representation of the boundary is disputed by the listed entities and would be excluded from a map drawn from their perspective.

When drawing a map from the perspective of a given country, one would start by gathering all the undisputed boundary (with no `perspectives` property), and then adding to that first all boundary explicitly accepted by the country, and second all boundary not explicitly disputed by the country. | | `perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | ## Constraints @@ -75,7 +75,7 @@ Some boundaries may be disputed by the divisions on one or both sides. | `class` | `maritime` | | `is_land` | `false` | | `is_territorial` | `true` | -| `division_ids` | `[ae266459-63a4-4508-8295-0101e27d039b, d4a6873d-885a-4f2a-bc0f-37e9d9e874e4]` | +| `division_ids` | `["ae266459-63a4-4508-8295-0101e27d039b", "d4a6873d-885a-4f2a-bc0f-37e9d9e874e4"]` | | `country` | `PF` | | `region` | `null` | | `is_disputed` | `false` | diff --git a/docs/schema/reference/places/place.md b/docs/schema/reference/places/place.md index b9539d8ee..b5edc846a 100644 --- a/docs/schema/reference/places/place.md +++ b/docs/schema/reference/places/place.md @@ -27,17 +27,17 @@ Places are point representations of real-world facilities, businesses, services, | `operating_status` | [`OperatingStatus`](types/operating_status.md) | An indication of whether a place is: in continued operation, in a temporary operating hiatus, or closed permanently.

This is not an indication of opening hours or that the place is open/closed at the current time-of-day or day-of-week.

When `operating_status` is `"permanently_closed"`, the `confidence` field will be set to 0. | | `categories` | [`Categories`](types/categories.md) (optional) | | | `categories.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary or main category of the place. | -| `categories.alternate` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | +| `categories.alternate` | `list<`[`SnakeCaseString`](../system/snake_case_string.md)`>` (optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories. | | `basic_category` | [`SnakeCaseString`](../system/snake_case_string.md) (optional) | The basic level category of a place.

This field classifies places into categories at a level that most people find intuitive. The full list of possible values it may hold can be found at (TODO).

The basic level category, or simply basic category, is based on a cognitive science model use in taxonomy and ontology development. The idea is to provide the category name at the level of generality that is preferred by humans in learning and memory tasks. This category to be roughly in the middle of the general-to-specific category hierarchy.

The full list of basic level categories is available at https://docs.overturemaps.org/guides/places/ | | `taxonomy` | [`Taxonomy`](types/taxonomy.md) (optional) | A structured representation of the place's category within the Overture taxonomy.

Provides the primary classification, full hierarchy path, and alternate categories. | | `taxonomy.primary` | [`SnakeCaseString`](../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `taxonomy.hierarchy` | [`SnakeCaseString`](../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | -| `taxonomy.alternates` | [`SnakeCaseString`](../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | +| `taxonomy.hierarchy` | `list<`[`SnakeCaseString`](../system/snake_case_string.md)`>` | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field. | +| `taxonomy.alternates` | `list<`[`SnakeCaseString`](../system/snake_case_string.md)`>` (optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy. | | `confidence` | [`ConfidenceScore`](../core/confidence_score.md) (optional) | A score between 0 and 1 indicating how confident we are that the place exists.

A confidence score of 0 indicates that we are certain the place doesn't exist anymore and will always be paired with an `operating_status` of `"permanently_closed"`.

A confidence score of 1 indicates that we are certain the place does exist.

If there is no value for confidence, it means we don't have enough information on which to estimate our confidence level. | | `websites` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The websites of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `socials` | `list<`[`HttpUrl`](../pydantic/networks/http_url.md)`>` (optional) | The social media URLs of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `emails` | `list<`[`EmailStr`](../pydantic/networks/email_str.md)`>` (optional) | The email addresses of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `phones` | [`PhoneNumber`](../system/phone_number.md) (list, optional) | The phone numbers of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `phones` | `list<`[`PhoneNumber`](../system/phone_number.md)`>` (optional) | The phone numbers of the place.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | | `brand` | [`Brand`](types/brand.md) (optional) | The brand associated with the place. | | `brand.names` | [`Names`](../core/names.md) (optional) | | | `brand.names.primary` | [`StrippedString`](../system/stripped_string.md) | The most commonly used name. | @@ -48,7 +48,7 @@ Places are point representations of real-world facilities, businesses, services, | `brand.names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `brand.names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `brand.names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `brand.names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `brand.names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `brand.names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `brand.names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `brand.wikidata` | [`WikidataId`](../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | @@ -67,7 +67,7 @@ Places are point representations of real-world facilities, businesses, services, | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | @@ -94,10 +94,10 @@ Places are point representations of real-world facilities, businesses, services, | `categories.primary` | `hotel` | | `categories.alternate` | `null` | | `confidence` | `0.7337175792507205` | -| `websites` | `[https://www.superhotel.co.jp/s_hotels/beppu/]` | -| `socials` | `[https://www.facebook.com/107663894904826]` | +| `websites` | `["https://www.superhotel.co.jp/s_hotels/beppu/"]` | +| `socials` | `["https://www.facebook.com/107663894904826"]` | | `emails` | `null` | -| `phones` | `[+81977009000]` | +| `phones` | `["+81977009000"]` | | `brand.wikidata` | `null` | | `brand.names.primary` | `SUPER HOTEL` | | `brand.names.common` | `null` | diff --git a/docs/schema/reference/places/types/brand.md b/docs/schema/reference/places/types/brand.md index d7b6668c9..8064e958d 100644 --- a/docs/schema/reference/places/types/brand.md +++ b/docs/schema/reference/places/types/brand.md @@ -17,7 +17,7 @@ A location with multiple brands is modeled as multiple separate places, each wit | `names.rules[].language` | [`LanguageTag`](../../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `wikidata` | [`WikidataId`](../../system/wikidata_id.md) (optional) | A wikidata ID, as found on https://www.wikidata.org/ | diff --git a/docs/schema/reference/places/types/categories.md b/docs/schema/reference/places/types/categories.md index cbc13a334..fbb5a64d2 100644 --- a/docs/schema/reference/places/types/categories.md +++ b/docs/schema/reference/places/types/categories.md @@ -9,7 +9,7 @@ Complete list is available on GitHub: [https://github.com/OvertureMaps/schema/bl | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary or main category of the place. | -| `alternate` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.

*All items must be unique. (`UniqueItemsConstraint`)* | +| `alternate` | `list<`[`SnakeCaseString`](../../system/snake_case_string.md)`>` (optional) | Alternate categories of the place.

Some places might fit into two categories, e.g., a book store and a coffee shop. In these cases, the primary category can be augmented with additional categories.

*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/places/types/taxonomy.md b/docs/schema/reference/places/types/taxonomy.md index 1b45af640..33f5b4da9 100644 --- a/docs/schema/reference/places/types/taxonomy.md +++ b/docs/schema/reference/places/types/taxonomy.md @@ -9,8 +9,8 @@ Provides the primary classification, full hierarchy path, and alternate categori | Name | Type | Description | | -----: | :----: | ------------- | | `primary` | [`SnakeCaseString`](../../system/snake_case_string.md) | The primary, or most specific, category known about this place.

The `primary` category value must always equal the last or rightmost entry in the `hierarchy` field. | -| `hierarchy` | [`SnakeCaseString`](../../system/snake_case_string.md) (list) | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | -| `alternates` | [`SnakeCaseString`](../../system/snake_case_string.md) (list, optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `hierarchy` | `list<`[`SnakeCaseString`](../../system/snake_case_string.md)`>` | The full primary hierarchy of categories known for this place, ordered from most general to most specific. An example hierarchy might be: `["food_and_drink", "restaurant", "casual_eatery", "gas_station_sushi"]`.

The rightmost, or most specific, value in the `hierarchy` must always be equal to the `primary` field. The basic level category of the place will typically be found in the middle of the primary hierarchy. The primary hierarchy does not include any of the alternate categories found in the `alternates` field.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | +| `alternates` | `list<`[`SnakeCaseString`](../../system/snake_case_string.md)`>` (optional) | Unordered list of additional categories that are known for this place but that are not part of the primary category hierarchy.

Alternate categories allow a more complete picture of the place to be surfaced when it fits multiple unconnected branches in the taxonomy. For example a gas station that also sells groceries might have primary category of "gas_station" with an alternate of "grocery_store".

Alternate categories are not part of the primary hierarchy or another alternate category's hierarchy. In other words, if a category is a parent in the hierarchy of another category, that category can't be a primary or alternate category itself.

Note as well that this field is an unordered list of extra categories and does not represent a hierarchy.

*Minimum length: 1*
*All items must be unique. (`UniqueItemsConstraint`)* | ## Used By diff --git a/docs/schema/reference/transportation/segment.md b/docs/schema/reference/transportation/segment.md index 6669bae47..2b8319908 100644 --- a/docs/schema/reference/transportation/segment.md +++ b/docs/schema/reference/transportation/segment.md @@ -58,7 +58,7 @@ sidebar_position: 1 | `names.rules[].language` | [`LanguageTag`](../system/language_tag.md) (optional) | The language in which the name `value` is specified, if known, as an IETF BCP 47 language tag. | | `names.rules[].perspectives` | [`Perspectives`](../core/perspectives.md) (optional) | Political perspectives from which a named feature is viewed. | | `names.rules[].perspectives.mode` | [`PerspectiveMode`](../core/perspective_mode.md) | Whether the perspective holder accepts or disputes this name. | -| `names.rules[].perspectives.countries` | [`CountryCodeAlpha2`](../system/country_code_alpha2.md) (list) | Countries holding the given mode of perspective. | +| `names.rules[].perspectives.countries` | `list<`[`CountryCodeAlpha2`](../system/country_code_alpha2.md)`>` | Countries holding the given mode of perspective. | | `names.rules[].between` | [`LinearlyReferencedRange`](../core/scoping/linearly_referenced_range.md) (list, optional) | The linearly-referenced sub-segment of the geometry, specified as a range (pair) of percentage displacements from the start of the geometry, that the containing NameRule applies to. | | `names.rules[].side` | [`Side`](../core/scoping/side.md) (optional) | The side, either left or right, that the containing NameRule applies to. | | `class` *(Road)* | [`RoadClass`](types/road_class.md) | | @@ -126,7 +126,7 @@ sidebar_position: 1 | `bbox.xmax` | `-176.56361389160156` | | `bbox.ymin` | `-43.954410552978516` | | `bbox.ymax` | `-43.953250885009766` | -| `geometry` | `LINESTRING (-176.5636191 -43.954404, -176.5643637 -43.9538145, -176.5647264 -43.9535274, -176.564994...` | +| `geometry` | `LINESTRING (-176.5636191 -43.954404, -176.5643637 -43.9538145, -176.5647264 -43.9535274, -176.564...` | | `theme` | `transportation` | | `type` | `segment` | | `version` | `1` |