FR:Restrictions conditionnelles
Élément cartographique : Restrictions conditionnelles |
Description |
Restrictions avec conditions |
Attributs |
access:conditional=*, maxspeed:conditional=*, maxweight:conditional=*, oneway:conditional=*, overtaking:conditional=*, restriction:conditional=*, *:conditional=* |
Cette page décrit les manières de décrire les restrictions conditionnelles.
Les restrictions simples sont couvertes par les attributs tels que access=private ou maxspeed=60.
Si la restriction répond d'une condition telle que le mode de transport alors un préfixe peut être adjoint (ex : oneway:bicycle=no ou maxspeed:hgv=80). Il est possible d'utiliser la condition comme clé au lieu d'utiliser access=* (ex : hgv=no à la place de access:hgv=no). Certains cas sont plus complexes, comme une limitation spécifique à un créneau horaire (ex : 60km/h de 23:00 à 5:00). Selon la méthode décrite alors l'attribut maxspeed=50 est remplacé par maxspeed:conditional=60 @ (23:00-05:00).
Utilisation
La méthode utilise la même syntaxe que pour les restrictions classiques avec pour différence que la clé est accompagnée du suffixe :conditional
. La valeur sera la valeur à propement parler, suivi de @ et de la condition.
La syntaxe générale est la suivante (les champs entre crochets [...] sont facultatifs) :
<restriction-type>[:<transportation mode>][:<direction>]:conditional = <restriction-value> @ <condition>[;<restriction-value> @ <condition>]
Les restrictions liés aux modes de transports font généralement abstraction de access: :
<transportation mode>[:<direction>]:conditional = <restriction-value> @ <condition>[;<restriction-value> @ <condition>]
Cette méthode rend possible la description de plusieurs états d'un élément tout en maintenant la simplicité des attributs basiques
Clé
La clé est construite de la même manière que pour les attributs de restriction, avec le suffixe :conditional.
Types de restriction
Le type de restriction réflète la nature de l'élément. Pour un panneau , avec un panneau suppémentaire indiquent une restriction d'accès, l'attribut à ajouter serait de type access. À l'inverse, pour un panneau , l'attribut attendu est de type maxlength.
Moyen de transport
Pour les moyens de transport, on omet généralement la séquence access:. On utilisera motorcar plutôt que access:motorcar. À noter que agricultural désigne la fonction du véhicule et non pas la voie. Voir Key:access#Transport mode restrictions pour la hiérarchie complète des moyens de transport.
Directions
Certaines restrictions s'appliquent en fonction du sens du chemin (à ne pas confondre avec le sens d'utilisation des chemins), forward et backward sont alors utilisés. Voir le sens des termes "forward", "backward", "left", and "right".
Valeur
La valeur comprend la restriction suivie de @ et de la condition. Des espaces peuvent être ajoutés pour faciliter la lecture.
Dans des cas exceptionnels, plusieurs paires de conditions sont nécessaires. Celles-ci doivent être séparées par des ; (Par exemple une limitation de vitesse dépendant de l'heure de la journée mais aussi de la saison). Voir Conflicting Restrictions.
Restriction
La restriction à proprement parler (ex : yes, private, 80, 55 mph). Celle-ci peut être générale (yes, no, permissive), spécifique à l'usage (destination, delivery, customers, forestry, agricultural etc.) ou sur autorisation (private, permit_holder).
Condition
Il existe plusieurs types de conditions possibles :
- Heure et date : Syntaxe classique de opening_hours=*. Si la valeur inclut des ;, la condition doit être entre parenthèses (ex : (Mo 06:00-24:00; Tu-Fr 00:00-24:00; Sa 00:00-13:00), Mo-Fr 07:00-19:00, sunrise-sunset ou Jan-Mar).
- Conditions routières : Par exemple wet ou snow. À noter que wet correspond à :wet dans maxspeed:wet=*. Son usage en condition est recommandé dans la mesure où maxspeed:wet a commencé à être utilisé avant qu'un consensus n'ait été atteint.
- Profil de véhicule : Par exemple weight, axleload, length, width, height, wheels et draught (pour les bateaux). Des opérateurs relatifs (<, >, =, <=, >=) peuvent être utilisés (ex : weight<7.5).
- Usage du véhicule : La restriction dépend de l'utilisation du véhicule comme pour le covoiturage (occupants>1) ou les substances dangereuses (hazmat=*).
- Groupe d'usagers : Restriction spécifique à un groupe d'usagers (ex : Docteurs, PMR, Urgence, Femmes).
- But d'accès : Pour les cas où la restriction ne s'applique pas dans le cadre d'un usage spécifique (ex : maxweight=2.5 + maxweight:conditional=none @ destination)s.
À l'exception de conditions "simples" il est recommandé que la condition soit entre parenthèses.
Conditions combinées
Plusieurs conditions peuvent être combinées à l'aide de l'opérateur AND (La forme majuscule assurant la lisibilité). AND signifique que les deux conditions doivent être remplies pour qu'elles soient appliquéres (ex : access:conditional=destination @ (Sa-Su AND weight>7)).
Restriction par défaut
Parfois, la restriction par défaut doit être explicitée (ex : maxspeed=120 + maxspeed:conditional=100 @ (20:00-06:00)). Voir OSM tags for routing/Access-Restrictions pour les restrictions d'accès par défaut pour différentes voies.
Conflits de restrictions
Quand un objet possède plusieurs restrictions l'algorithme suivant détermine quelle condition est valide :
- Une restriction spécifique à un mode de transport écrase une restriction plus générale. Voir Key:access#Transport mode restrictions pour la hiérarchie des modes de transport.
- Une restriction spécifique au sens d'un chemin écrase une restriction générale sur le chemin
- Une restriction conditionnelle écrase une restriction non conditionnelle
- Une restriction de Lanes, évaluée par voie, écrase une restriction plus générale ou non conditionnelle
- Dans le cas de plusieurs conditions remplies, la dernière validée est celle effective. On ordonne ainsi les conditions du général au plus spécifique, par exemple :
- (access=yes) + access:conditional=no @ (09:00-17:00); destination @ (09:00-17:00 AND disabled) : Ouvre l'accès spécifique aux personnes à mobilité réduite de 9h à 17h. Le créneau horaire est nécessaire ou les personnes à mobilité réduite n'y auraient pas accès en dehors du créneau de 17h à 9h.
- (maxspeed=none) + maxspeed:conditional=120 @ (06:00-20:00); 80 @ wet : La limitation à 80km/h sur sol humide écrase la limitation générale.
- (access=no) + access:conditional=delivery @ (07:00-11:00); customers @ (07:00-17:00) : Pas de conflit ici, chaque horaire étant spécifique à un type d'usage.
Attributs obsolètes
Les attributs suivants sont obsolètes lorsque utilisés en combinaison avec des attributs de restriction : day_on=*, day_off=*, date_on=*, date_off=*, hour_on=*, hour_off=*
Moyens de transport comme fonction
Les moyens de transport hov=*, emergency=*, hazmat=* et disabled=* sont considérés comme étant des conditions plutôt que des moyens de transport transportation modes. Cela ouvre à des restrictions plus complexes telles que access:conditional=destination @ (hazmat:A AND weight>7.5).
Exception
- Restriction de voies de stationnement, celles-ci disposent de leur propre méthode pour décrire les restrictions d'usage.
Exemples
Photo | Attributs | Interprétation |
---|---|---|
maxspeed=130 maxspeed:conditional=120 @ (06:00-19:00) |
Vitesse limitée à 120km/h de 6h à 19h mais autrement à 130km/h | |
type=restriction restriction:conditional=no_left_turn @ (Mo-Fr 07:00-09:00,16:00-18:00) |
Virage à gauche interdit de 7h à 9h et de 16h à 18h du Lundi au Vendredi Virage à gauche interdit de 7h à 9h et de 16h à 18h du Lundi au Vendredi | |
type=restriction restriction:conditional=no_left_turn @ (07:00-09:00,15:30-17:30) |
Virage à gauche interdit de 7h à 9h et de 15h30 à 17h30, à l'exception des cyclistes Virage à gauche interdit de 7h à 9h et de 15h30 à 17h30, à l'exception des cyclistes | |
maxspeed=none maxspeed:conditional=120 @ (06:00-20:00); 100 @ (22:00-06:00) |
Vitesse limitée à 120km/h de 6h à 20h puis à 100km de 22h à 6h, pas de limitation explicite de 20h à 22h. | |
highway=pedestrian motor_vehicle:conditional=delivery @ (Mo-Fr 06:00-11:00,17:00-19:00;Sa 03:30-19:00) |
Exemple complexe d'une rue piétonne hollandaise. Les livraisons sont autorisées à certains horaires. Les cyclistes sont interdits le Dimanche de 8h à 16h. Les véhicules à deux routes motrices étant interdits | |
access:conditional=destination @ (weight>5.5) | Véhicules de plus de 5.5t autorisés seulement pour la desserte | |
maxweight=7.5 maxweight:bus=none maxweight:conditional=none @ delivery |
Limite de poids non applicable aux bus et aux livraisons | |
maxweight:hgv=7.5 maxweight:hgv:conditional=none @ delivery |
Limite de poids non applicable aux livraisons | |
motor_vehicle:conditional=no @ (10:00-18:00 AND length>5) | Longueur maximale de 5m de 10h à 18h | |
motor_vehicle:conditional=no @ (2018 May 22-2018 Oct 7) | Portion de route fermée aux véhicules motorisés dans une certaine période | |
motorcycle:conditional=no @ (Sa,Su,PH) | Véhicules à deux roues motrices interdits le weekend et les jours fériés | |
highway=tertiary motor_vehicle=no |
Passage interdit pour les véhicules motorisés (à l'exception des bus) de 7h30 à 18h30 | |
overtaking:hgv:conditional=no @ (Mo-Fr 06:00-19:00) | Dépassement interdit pour les poids-lourds de 6h à 19h en semaine | |
oneway:conditional=yes @ Su |
Rue à sens unique le Dimanche non applicable aux cyclistes | |
maxspeed=80 maxspeed:hgv:conditional=60 @ (weight>7.5) |
Vitesse limitée à 60km/h pour les véhicules pesant plus de 7.5t contre 80km/h en général | |
amenity=parking | Stationnement limité à 90min à l'exception des Dimanches et jours fériés | |
type=restriction
restriction:conditional=no_left_turn @ (length > 6) | ||
oneway=reversible
oneway:backward:conditional=yes @ (Mo-Fr 17:00-21:00) |
Route dont le sens dépend selon l'heure de la journée | |
oneway=yes
oneway=-1 @ (Mo-Fr 07:00-10:00) |
Route à sens unique qui est à double sens de 7h à 10h en semaine | |
472125058 472125058 | fee=yes
fee=no @ Monday |
Élément à entrée gratuite les Lundi |
based on 232081251 232081251 | female=no
female=yes @ (7 Feb, 25 Mar) |
Élément où les femmes sont interdites à l'exception de la période du 7 Février au 25 Mars |
oneway=no + oneway:conditional=yes @ (Sa-Su;PH)
ou |
Route à sens unique le weekend et les jours fériés | |
oneway=no + oneway:conditional=yes @ (Mo-Fr;PH off)
ou |
Route à sens unique durant la semaine à l'exception des jours fériés | |
restriction:conditional=no_right_turn @ (Mo-Fr;PH off) | Virage à droite interdit le weekend et les jours fériés | |
hgv:conditional=no @ (06:00-22:00 AND weight>5) | Restriction de poids pour les poids-lourds, spécifique au créneau de 6h à 22H | |
type=restriction
restriction:conditional=no_u_turn @ (06:00-22:00) |
Demi-tour interdit pour les véhicules motorisés (exception faite des deux roues motorisés) de 6h à 22h | |
Voir aussi
- Proposed features/Conditional restrictions : Proposition approuvée
- Proposed features/temporary (conditional) : Restrictions temporaires
- CyclOSM Rendu de restriction d'accès conditionnelle au zoom 20
- Requête Sophox spécifique aux turn restrictions
|