Skip to content

Commit

Permalink
Subclass after segment restructure
Browse files Browse the repository at this point in the history
  • Loading branch information
brad-richardson committed Jun 3, 2024
1 parent ff1d5b3 commit ff98b30
Showing 1 changed file with 28 additions and 8 deletions.
36 changes: 28 additions & 8 deletions schema/transportation/segment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ properties:
required: [class]
properties:
class: { "$ref": "#/$defs/propertyDefinitions/roadClass" }
subclass: { "$ref": "#/$defs/propertyDefinitions/subclass" }
subclass_rules: { "$ref": "#/$defs/propertyDefinitions/subclassRulesContainer" }
access_restrictions: { "$ref": "#/$defs/propertyContainers/accessContainer" }
level: { "$ref": "../defs.yaml#/$defs/propertyDefinitions/level" }
level_rules: { "$ref": "#/$defs/propertyContainers/levelRulesContainer" }
Expand Down Expand Up @@ -78,13 +80,9 @@ properties:
- living_street # Similar to residential but has implied legal restriction for motor vehicles (which can vary country by country)
- trunk
- unclassified # Known roads, paved, but subordinate to all of: motorway, trunk, primary, secondary, tertiary
- parking_aisle # Service road intended for parking
- driveway # Service road intended for deliveries
- alley # Service road intended for rear entrances, fire exits
- service # Provides vehicle access to a feature (such as a building), typically not part of the public street network
- pedestrian
- footway
- sidewalk
- crosswalk
- footway # Minor segments mainly used by pedestrians
- steps
- path
- track
Expand Down Expand Up @@ -164,11 +162,11 @@ properties:
access: { "$ref": "#/$defs/propertyContainers/accessContainer" }
prohibited_transitions: { "$ref": "#/$defs/propertyContainers/prohibitedTransitionsContainer"}
roadFlag:
description: Simple flags that can be on or off for a road segment
description: >-
Simple flags that can be on or off for a road segment. Specifies physical characteristics and can overlap.
type: string
enum:
- is_bridge
- is_link
- is_tunnel
- is_under_construction
- is_abandoned
Expand Down Expand Up @@ -214,6 +212,18 @@ properties:
minLength: 1
pattern: ^(\S.*)?\S$ # Leading and trailing whitespace are not allowed.
wikidata: { "$ref": "../defs.yaml#/$defs/propertyDefinitions/wikidata" }
subclass:
description: >-
Refines expected usage of the segment, must not overlap.
type: string
enum:
- link # Connecting stretch (sliproad or ramp) between two road types
- sidewalk # Footway that lies along a road
- crosswalk # Footway that intersects other roads
- parking_aisle # Service road intended for parking
- driveway # Service road intended for deliveries
- alley # Service road intended for rear entrances, fire exits
- cycle_crossing # Cycleway that intersects with other roads
speed:
description: >-
A speed value, i.e. a certain number of distance units
Expand Down Expand Up @@ -635,6 +645,16 @@ properties:
required: [value]
properties:
value: { "$ref": "../defs.yaml#/$defs/propertyDefinitions/level" }
subclassRulesContainer:
description: Set of subclasses scoped along segment
type: array
items:
type: object
allOf:
- { "$ref": "../defs.yaml#/$defs/propertyContainers/geometricRangeScopeContainer" }
unevaluatedProperties: false
properties:
value: { "$ref": "#/$defs/propertyDefinitions/subclass" }
surfaceContainer:
description: Physical surface of the road. May either be
specified as a single global value for the segment, or as
Expand Down

0 comments on commit ff98b30

Please sign in to comment.