diff --git a/counterexamples/transportation/segment/bad-connector-duplicate.json b/counterexamples/transportation/segment/bad-connector-duplicate.json index 4c55edd6..02022678 100644 --- a/counterexamples/transportation/segment/bad-connector-duplicate.json +++ b/counterexamples/transportation/segment/bad-connector-duplicate.json @@ -1,5 +1,5 @@ { - "id": "segment with an invalid entry in the connector_ids array", + "id": "segment with an invalid entry in the connectors array", "type": "Feature", "geometry": { "type": "LineString", diff --git a/counterexamples/transportation/segment/bad-connector.json b/counterexamples/transportation/segment/bad-connector.json index e20f44b5..afb33220 100644 --- a/counterexamples/transportation/segment/bad-connector.json +++ b/counterexamples/transportation/segment/bad-connector.json @@ -1,5 +1,5 @@ { - "id": "segment with an invalid entry in the connector_ids array", + "id": "segment with an invalid entry in the connectors array", "type": "Feature", "geometry": { "type": "LineString", @@ -8,12 +8,16 @@ "properties": { "ext_expected_errors": [ "expected string, but got number", - "expected string, but got boolean" + "expected string, but got boolean", + "expected object, but got string", + "expected object, but got number", + "expected object, but got boolean" ], "theme": "transportation", "type": "segment", "version": 3, "subtype": "rail", - "connector_ids": ["bazConnector", "qux", 1, false] + "connector_ids": ["bazConnector", "qux", 1, false], + "connectors": [{"connector_id": "foo", "at": 0.0}, {"connector_id": "bar", "at": 1.0}, "bazConnector", "qux", 1, false] } } diff --git a/counterexamples/transportation/segment/bad-route.yaml b/counterexamples/transportation/segment/bad-route.yaml index 518e81c6..3bbf348e 100644 --- a/counterexamples/transportation/segment/bad-route.yaml +++ b/counterexamples/transportation/segment/bad-route.yaml @@ -13,7 +13,13 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 routes: - name: "" ref: 1234 diff --git a/counterexamples/transportation/segment/road/bad-road-level-invalid-value.yaml b/counterexamples/transportation/segment/road/bad-road-level-invalid-value.yaml index e4ca72a4..e8e57f76 100644 --- a/counterexamples/transportation/segment/road/bad-road-level-invalid-value.yaml +++ b/counterexamples/transportation/segment/road/bad-road-level-invalid-value.yaml @@ -10,7 +10,13 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 level_rules: - value: 1.5 ext_expected_errors: diff --git a/counterexamples/transportation/segment/road/bad-road-level-unsupported-properties.yaml b/counterexamples/transportation/segment/road/bad-road-level-unsupported-properties.yaml index 94fd9d1d..8d34999f 100644 --- a/counterexamples/transportation/segment/road/bad-road-level-unsupported-properties.yaml +++ b/counterexamples/transportation/segment/road/bad-road-level-unsupported-properties.yaml @@ -10,7 +10,13 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 level_rules: - value: 1 foo: bar diff --git a/counterexamples/transportation/segment/road/restrictions/access/bad-access-mode.yaml b/counterexamples/transportation/segment/road/restrictions/access/bad-access-mode.yaml index d95495e7..3043f01c 100644 --- a/counterexamples/transportation/segment/road/restrictions/access/bad-access-mode.yaml +++ b/counterexamples/transportation/segment/road/restrictions/access/bad-access-mode.yaml @@ -18,7 +18,13 @@ properties: subclass: link subclass_rules: - value: link + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 road_surface: gravel road_flags: - [is_link, is_tunnel] # Note: `is_link` is deprecated and will be removed in a future release in favor of the link subclass diff --git a/examples/transportation/docusaurus/lanes-resolution-segment-01.yaml b/examples/transportation/docusaurus/lanes-resolution-segment-01.yaml index 1b4dab03..7c17f54f 100644 --- a/examples/transportation/docusaurus/lanes-resolution-segment-01.yaml +++ b/examples/transportation/docusaurus/lanes-resolution-segment-01.yaml @@ -10,7 +10,13 @@ properties: theme: transportation type: segment version: 1 - connector_ids: [lanes-resolution-example-connector] + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release + connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 subtype: road class: motorway lanes: # A list of two geometrically-scoped rules for resolving the lane block. diff --git a/examples/transportation/docusaurus/lanes-resolution-segment-02.yaml b/examples/transportation/docusaurus/lanes-resolution-segment-02.yaml index c62b33cc..8c87fe21 100644 --- a/examples/transportation/docusaurus/lanes-resolution-segment-02.yaml +++ b/examples/transportation/docusaurus/lanes-resolution-segment-02.yaml @@ -10,7 +10,13 @@ properties: theme: transportation type: segment version: 2 - connector_ids: [lanes-resolution-example-connector] + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release + connector_ids: [fooConnector, barConnector] + connectors: + - connector_id: fooConnector + at: 0 + - connector_id: barConnector + at: 1 subtype: road class: motorway lanes: diff --git a/examples/transportation/docusaurus/simple-road.yaml b/examples/transportation/docusaurus/simple-road.yaml index 1b976d2c..f5b34b78 100644 --- a/examples/transportation/docusaurus/simple-road.yaml +++ b/examples/transportation/docusaurus/simple-road.yaml @@ -13,9 +13,15 @@ properties: version: 5 subtype: road class: residential + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - - overture:transportation:example:simple-road-connector-1 - - overture:transportation:example:simple-road-connector-2 + - overture:transportation:example:via-turn-restriction-connector1 + - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 names: primary: Nicola Street lanes: diff --git a/examples/transportation/docusaurus/turn-restriction-01-exit.yaml b/examples/transportation/docusaurus/turn-restriction-01-exit.yaml index f183f86e..ad8845a2 100644 --- a/examples/transportation/docusaurus/turn-restriction-01-exit.yaml +++ b/examples/transportation/docusaurus/turn-restriction-01-exit.yaml @@ -15,6 +15,12 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - - overture:transportation:example:simple-turn-restriction-connector1 - - overture:transportation:example:simple-turn-restriction-connector3 + - overture:transportation:example:via-turn-restriction-connector1 + - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 diff --git a/examples/transportation/docusaurus/turn-restriction-01-source.yaml b/examples/transportation/docusaurus/turn-restriction-01-source.yaml index 4755febe..3ca91999 100644 --- a/examples/transportation/docusaurus/turn-restriction-01-source.yaml +++ b/examples/transportation/docusaurus/turn-restriction-01-source.yaml @@ -13,9 +13,15 @@ properties: version: 5 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - - overture:transportation:example:simple-turn-restriction-connector1 - - overture:transportation:example:simple-turn-restriction-connector2 + - overture:transportation:example:via-turn-restriction-connector1 + - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 prohibited_transitions: - sequence: - segment_id: overture:transportation:example:simple-turn-restriction-target diff --git a/examples/transportation/docusaurus/turn-restriction-01-target.yaml b/examples/transportation/docusaurus/turn-restriction-01-target.yaml index 93678496..04e397db 100644 --- a/examples/transportation/docusaurus/turn-restriction-01-target.yaml +++ b/examples/transportation/docusaurus/turn-restriction-01-target.yaml @@ -15,6 +15,12 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - - overture:transportation:example:simple-turn-restriction-connector2 - - overture:transportation:example:simple-turn-restriction-connector3 + - overture:transportation:example:via-turn-restriction-connector1 + - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 diff --git a/examples/transportation/docusaurus/turn-restriction-02-source.yaml b/examples/transportation/docusaurus/turn-restriction-02-source.yaml index a1e572c5..83222315 100644 --- a/examples/transportation/docusaurus/turn-restriction-02-source.yaml +++ b/examples/transportation/docusaurus/turn-restriction-02-source.yaml @@ -19,8 +19,15 @@ properties: version: 5 subtype: road class: primary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - overture:transportation:example:via-turn-restriction-connector1 + - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 names: primary: Arborway prohibited_transitions: diff --git a/examples/transportation/docusaurus/turn-restriction-02-target.yaml b/examples/transportation/docusaurus/turn-restriction-02-target.yaml index ffea094c..12ff96ed 100644 --- a/examples/transportation/docusaurus/turn-restriction-02-target.yaml +++ b/examples/transportation/docusaurus/turn-restriction-02-target.yaml @@ -17,8 +17,15 @@ properties: version: 5 subtype: road class: primary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: + - overture:transportation:example:via-turn-restriction-connector1 - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 names: primary: Arborway road_surface: diff --git a/examples/transportation/docusaurus/turn-restriction-02-via.yaml b/examples/transportation/docusaurus/turn-restriction-02-via.yaml index a26018e6..c2f8b2f5 100644 --- a/examples/transportation/docusaurus/turn-restriction-02-via.yaml +++ b/examples/transportation/docusaurus/turn-restriction-02-via.yaml @@ -14,9 +14,15 @@ properties: version: 5 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: - overture:transportation:example:via-turn-restriction-connector1 - overture:transportation:example:via-turn-restriction-connector2 + connectors: + - connector_id: overture:transportation:example:via-turn-restriction-connector1 + at: 0 + - connector_id: overture:transportation:example:via-turn-restriction-connector2 + at: 1 names: primary: Washington Street road_surface: diff --git a/examples/transportation/segment/road/lanes/lanes-flow-alternating.yaml b/examples/transportation/segment/road/lanes/lanes-flow-alternating.yaml index b1b340f4..d3a78d4c 100644 --- a/examples/transportation/segment/road/lanes/lanes-flow-alternating.yaml +++ b/examples/transportation/segment/road/lanes/lanes-flow-alternating.yaml @@ -10,6 +10,7 @@ properties: version: 4 subtype: road class: primary + connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/lanes/lanes-flow-reversible.yaml b/examples/transportation/segment/road/lanes/lanes-flow-reversible.yaml index 5d4d7d78..ea91cf01 100644 --- a/examples/transportation/segment/road/lanes/lanes-flow-reversible.yaml +++ b/examples/transportation/segment/road/lanes/lanes-flow-reversible.yaml @@ -10,6 +10,7 @@ properties: version: 5 subtype: road class: primary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/road-multiple-connectors.yaml b/examples/transportation/segment/road/road-multiple-connectors.yaml index d8c1c54e..ab538447 100644 --- a/examples/transportation/segment/road/road-multiple-connectors.yaml +++ b/examples/transportation/segment/road/road-multiple-connectors.yaml @@ -1,22 +1,23 @@ --- -id: overture:transportation:segment:0841f2c7ffffffff0477f88f6824635d +id: overture:transportation:segment:123 type: Feature geometry: type: LineString - coordinates: [[14.5161902, 56.6452609], [14.5151903, 56.6465165], [14.5128482, 56.6494576]] + coordinates: [[0, 0], [0.03, 0], [0.10, 0]] properties: theme: transportation type: segment version: 1 subtype: road class: secondary - connector_ids: [08f1f2c6a5d612f20473f1d0ae2f3b9b, 08f1f2c78b6cd7480477fda99ff112b1, 08f1f2c78b6740300477f04e2259ca78] - road_surface: - - value: paved + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release + connector_ids: [fooConnector, barConnector, bazConnector] connectors: - - connector_id: 08f1f2c6a5d612f20473f1d0ae2f3b9b + - connector_id: fooConnector at: 0 - - connector_id: 08f1f2c78b6cd7480477fda99ff112b1 + - connector_id: barConnector at: 0.3 - - connector_id: 08f1f2c78b6740300477f04e2259ca78 + - connector_id: bazConnector at: 1 + road_surface: + - value: paved diff --git a/examples/transportation/segment/road/road-oneway-with-lanes.yaml b/examples/transportation/segment/road/road-oneway-with-lanes.yaml index 6044e4bb..4d766a5e 100644 --- a/examples/transportation/segment/road/road-oneway-with-lanes.yaml +++ b/examples/transportation/segment/road/road-oneway-with-lanes.yaml @@ -10,6 +10,7 @@ properties: version: 6 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/road-with-lr-name.yaml b/examples/transportation/segment/road/road-with-lr-name.yaml index ba18d028..8ec1066b 100644 --- a/examples/transportation/segment/road/road-with-lr-name.yaml +++ b/examples/transportation/segment/road/road-with-lr-name.yaml @@ -13,6 +13,7 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/road-with-lr-width.yaml b/examples/transportation/segment/road/road-with-lr-width.yaml index a52138aa..28db179e 100644 --- a/examples/transportation/segment/road/road-with-lr-width.yaml +++ b/examples/transportation/segment/road/road-with-lr-width.yaml @@ -13,6 +13,7 @@ properties: version: 1 subtype: road class: secondary + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/road-with-route.yaml b/examples/transportation/segment/road/road-with-route.yaml index e7c8617d..991841ef 100644 --- a/examples/transportation/segment/road/road-with-route.yaml +++ b/examples/transportation/segment/road/road-with-route.yaml @@ -11,6 +11,7 @@ properties: version: 1 subtype: road class: motorway + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/road.yaml b/examples/transportation/segment/road/road.yaml index 0e6e116d..ac126c2c 100644 --- a/examples/transportation/segment/road/road.yaml +++ b/examples/transportation/segment/road/road.yaml @@ -16,6 +16,7 @@ properties: subclass: link subclass_rules: - value: link + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/examples/transportation/segment/road/sidewalk.yaml b/examples/transportation/segment/road/sidewalk.yaml index a0d34448..5c234c1e 100644 --- a/examples/transportation/segment/road/sidewalk.yaml +++ b/examples/transportation/segment/road/sidewalk.yaml @@ -13,6 +13,7 @@ properties: subclass: sidewalk subclass_rules: - value: sidewalk + # `connector_ids` is deprecated in favor of `connectors`, planned to be removed for the October release connector_ids: [fooConnector, barConnector] connectors: - connector_id: fooConnector diff --git a/schema/transportation/segment.yaml b/schema/transportation/segment.yaml index 0d1f2f78..edabe301 100644 --- a/schema/transportation/segment.yaml +++ b/schema/transportation/segment.yaml @@ -61,6 +61,7 @@ properties: "$comment": >- Each entry in this array is the GERS ID of a transportation connector feature. uniqueItems: true + minItems: 2 default: [] connectors: description: >- @@ -72,13 +73,14 @@ properties: items: type: object "$comment": >- - Each entry in this array is the GERS ID and LR of a transportation connector feature. + Contains the GERS ID and relative position between 0 and 1 of a connector feature along the segment. unevaluatedProperties: false required: [connector_id, at] properties: connector_id: { "$ref": "../defs.yaml#/$defs/propertyDefinitions/id" } at: { "$ref": "../defs.yaml#/$defs/propertyDefinitions/linearlyReferencedPosition" } uniqueItems: true + minItems: 2 default: [] routes: { "$ref": "#/$defs/propertyDefinitions/routes" } "$defs":