Proposal:Extended conditions for access tags

From OpenStreetMap Wiki
Jump to navigation Jump to search
Extended conditions for access tags
Proposal status: Abandoned (inactive)
Proposed by: Tordanik
Tagging: [[Key:<basekey>:<condition_1>:...:<condition_n>|<basekey>:<condition_1>:...:<condition_n>]]=[[Tag:<basekey>:<condition_1>:...:<condition_n>=*|*]]
Applies to: *
Definition: an access tag only applies if all conditions are fulfilled
Statistics:

Draft started: 2009-03-07
RFC start: 2012-08-10

This proposal presents the idea of adding conditions to existing keys (such as maxspeed, access ...). A tag with conditions will only have an effect if all conditions are valid. Something like this is necessary to describe many traffic restrictions encountered in reality.

General idea

Conditions are appended after the base key. Conditions are separated from the base key and each other using colons (":"). Brackets around conditions should be used to improve readability or to avoid ambiguities.

For compatibility reasons, the "access" base key can be omitted if it is followed by a transportation category: access:hgv=* and hgv=* are considered equal.

Possible conditions

A list of conditions can be found here: Conditions

Examples

Tagging Interpretation
maxspeed=100
maxspeed:hgv=60
Maxspeed is 100 km/h for most vehicles, but 60 km/h for hgv traffic.
maxspeed=120
maxspeed:wet=80
Maxspeed is 120 km/h under normal conditions, but 80 km/h when the road is wet.
bicycle=yes
bicycle:(10:00-18:00)=no
Bicycles are permitted to use this street outside 10AM-6PM.
access:(weight>5.5)=destination Vehicles over 5.5t are only allowed for destination traffic.
maxspeed:hgv=120
maxspeed:hgv:(Sa,Su)=80
Maxspeed for hgv is limited to 80 on weekends, but 120 otherwise.
maxspeed=50
maxspeed:(Mo-Fr 07:00-17:00)=30
Maxspeed limited to 30 on 7AM-5PM weekdays, but 50 otherwise.

Usage and evaluation details

Evaluating "conflicting" tags

  1. More specific information overrides more general information. For example, on a wet road, maxspeed:wet=* overrides maxspeed=*; maxspeed:wet:hgv=* overrides both maxspeed:wet=* and maxspeed:hgv=* for hgv.
  2. If there are conflicting tags without a "specificness" hierarchy, the most restrictive rule (e.g. lowest maxspeed) is to be chosen.

Detailed definition

Specificness is defined as follows: a key A is more specific than a key B if the set of conditions in A, including implied conditions, is a superset of the set of conditions in B, including implied conditions. The following conditions are implied:

  • transportation modes imply all ancestor transportation modes (e.g. "motorcar" implies "motor_vehicle" and "vehicle")

Way direction dependency

The following tags affected by this proposal depend on way direction:

  • tags with ":forward" or ":backward" as part of the key
  • tags starting with direction-dependent base keys (e.g. "oneway:...")

Editors should include those tags in their way reversal safety checks.

Debate

Comments

Please use the talk page.

First Voting

See /First voting.

See also