Changes between Version 47 and Version 48 of Rules/FranceSpecificRules
- Timestamp:
- 2020-04-12T17:53:01+02:00 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Rules/FranceSpecificRules
v47 v48 96 96 } 97 97 98 /* Select milestone nodes */99 node[highway=milestone][nat_ref][operator] {100 set pr_node;101 }102 103 98 /* validation rules for French RIU (Referentiel Inter Urbain) at https://www.data.gouv.fr/fr/datasets/bornage-du-reseau-routier-national */ 104 node .pr_node[nat_ref][nat_ref!~/^(([1-9][0-9]|0[1-9])PR([0-9]|[1-9][0-9]|[1-9][0-9][0-9])[DGU](|C))$/][inside("FR")] {105 throwWarning: tr("{0} is not a milestone valid reference RIU", "{ 1.tag}");99 node[highway=milestone][operator][nat_ref][nat_ref!~/^(([1-9][0-9]|0[1-9])PR([0-9]|[1-9][0-9]|[1-9][0-9][0-9])[DGU](|C))$/][inside("FR")] { 100 throwWarning: tr("{0} is not a milestone valid reference RIU", "{2.tag}"); 106 101 group: tr("validation rules highway milestone"); 107 102 -osmoseItemClassLevel: "3040/30403/3"; … … 111 106 112 107 /* missing ref for milestone */ 113 node .pr_node[nat_ref][!ref][inside("FR")] {108 node[highway=milestone][operator][nat_ref][!ref][inside("FR")] { 114 109 throwWarning: tr("missing ref"); 115 110 group: tr("validation rules highway milestone"); … … 120 115 121 116 /* missing distance for milestone */ 122 node .pr_node[nat_ref][!distance][inside("FR")] {117 node[highway=milestone][operator][nat_ref][!distance][inside("FR")] { 123 118 throwWarning: tr("missing distance"); 124 119 group: tr("validation rules highway milestone"); … … 128 123 } 129 124 130 /* Select major roads */131 way[highway=~/^(motorway|trunk|primary|secondary|tertiary)$/] {132 set major_road;133 }134 135 /* Select links roads */136 way[highway=~/^.*_link$/] {137 set link_road;138 }139 140 125 /* tag nat_ref is for links roads, ref is on major roads */ 141 way .major_road[nat_ref][operator][!junction][inside("FR")] {126 way[highway=~/^(motorway|trunk|primary|secondary|tertiary)$/][nat_ref][operator][!junction][inside("FR")] { 142 127 throwWarning: tr("{0} must be a link road or roundabout", "{1.tag}"); 143 128 group: tr("validation rules nat_ref in France"); … … 147 132 } 148 133 149 way .major_road["nat_ref:backward"][operator][inside("FR")],150 way .major_road["nat_ref:forward"][operator][inside("FR")] {134 way[highway=~/^(motorway|trunk|primary|secondary|tertiary)$/]["nat_ref:backward"][operator][inside("FR")], 135 way[highway=~/^(motorway|trunk|primary|secondary|tertiary)$/]["nat_ref:forward"][operator][inside("FR")] { 151 136 throwWarning: tr("{0} must be a link road ", "{1.tag}"); 152 137 group: tr("validation rules nat_ref in France"); … … 156 141 157 142 /* tag nat_ref is well formed */ 158 way .link_road[nat_ref][nat_ref!~/^([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9])$/][operator!="VILLE DE PARIS"][inside("FR")] {143 way[highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/][nat_ref][nat_ref!~/^([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9])$/][operator!="VILLE DE PARIS"][inside("FR")] { 159 144 throwWarning: tr("{0} is not a valid reference", "{1.tag}"); 160 145 group: tr("validation rules nat_ref in France"); … … 164 149 165 150 /* tag nat_ref is well formed on roundabout*/ 166 way .major_road[nat_ref][nat_ref!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][junction=roundabout][inside("FR")] {167 throwWarning: tr("{0} is not a valid reference", "{ 1.tag}");151 way[junction=roundabout][highway=~/^(motorway|trunk|primary|secondary|tertiary)$/][nat_ref][nat_ref!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][inside("FR")] { 152 throwWarning: tr("{0} is not a valid reference", "{2.tag}"); 168 153 group: tr("validation rules nat_ref in France"); 169 154 -osmoseTags: list("ref", "highway"); … … 172 157 173 158 /* tag nat_ref is well formed specific Paris*/ 174 way .link_road[nat_ref][nat_ref!~/^(75Periph_Paris_[0-9]{2}_(1[0-9]|[1-9]))$/][operator="VILLE DE PARIS"][inside("FR")] {159 way[highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/][nat_ref][nat_ref!~/^(75Periph_Paris_[0-9]{2}_(1[0-9]|[1-9]))$/][operator="VILLE DE PARIS"][inside("FR")] { 175 160 throwWarning: tr("{0} is not a valid reference (Paris)", "{1.tag}"); 176 161 group: tr("validation rules nat_ref in France"); … … 179 164 } 180 165 181 way .link_road["nat_ref:forward"]["nat_ref:forward"!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][inside("FR")],182 way .link_road["nat_ref:backward"]["nat_ref:backward"!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][inside("FR")]{166 way[highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/]["nat_ref:forward"]["nat_ref:forward"!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][inside("FR")], 167 way[highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/]["nat_ref:backward"]["nat_ref:backward"!~/^(([1-9][0-9]|0[1-9])[ANP]9[0-9]{3}([0-9]?[0-9]|B1|B2)(|[A-Z]|[a-z])(|CD)_(1[0-9]|[1-9]))$/][inside("FR")]{ 183 168 throwWarning: tr("{0} is not a valid reference", "{1.tag}"); 184 169 group: tr("validation rules nat_ref in France"); … … 188 173 189 174 /* nat_ref reference without operator */ 190 way[highway][nat_ref][!operator][inside("FR")] { 175 way[highway][highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/][nat_ref][!operator][inside("FR")] { 191 176 throwWarning: tr("Missing tag operator with nat_ref"); 192 177 group: tr("validation rules nat_ref in France"); … … 194 179 } 195 180 196 way[highway]["nat_ref:forward"][!operator][inside("FR")], 197 way[highway]["nat_ref:backward"][!operator][inside("FR")] { 181 way[highway][highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/]["nat_ref:forward"][!operator][inside("FR")], 182 way[highway][highway=~/^(motorway_link|trunk_link|primary_link|secondary_link|tertiary_link)$/]["nat_ref:backward"][!operator][inside("FR")] { 198 183 throwWarning: tr("Missing tag operator with nat_ref"); 199 184 group: tr("validation rules nat_ref in France");
