| 59 | | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified|residential)$/]!:closed!.connected_node.downloaded >[index=-1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| 60 | | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified|residential)$/]!:closed!.connected_node.downloaded >[index=1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| 61 | | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified|residential)$/]!:closed!.connected_node.new_feature >[index=-1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| 62 | | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified|residential)$/]!:closed!.connected_node.new_feature >[index=1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle] { |
| 63 | | throwWarning: "Unconnected Road"; |
| 64 | | group: tr("Not-connected highway/cycleway -- OSMOSE Item 1210"); |
| | 57 | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified)$/]!:closed!.connected_node.downloaded >[index=-1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| | 58 | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified)$/]!:closed!.connected_node.downloaded >[index=1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| | 59 | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified)$/]!:closed!.connected_node.new_feature >[index=-1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle], |
| | 60 | way[highway=~/^(motorway|trunk|primary|secondary|tertiary|unclassified)$/]!:closed!.connected_node.new_feature >[index=1] node[noexit!=yes][amenity!=parking_entrance][amenity!=parking][highway!=turning_circle] { |
| | 61 | throwWarning: "1210: Unconnected Highway"; |
| | 62 | group: "OSMOSE"; |
| 153 | | throwError: "administrative boundary does not have source tag"; |
| 154 | | group: "source -- OSMOSE Item 2040"; |
| 155 | | } |
| 156 | | |
| 157 | | |
| 158 | | |
| 159 | | /* OSMOSE sudden highway type change -- Item 1090 */ |
| 160 | | |
| 161 | | /* ---- SET CLASSES ---- */ |
| 162 | | |
| 163 | | way[highway=primary] node:connection { |
| 164 | | set hwy_cont_primary; |
| 165 | | } |
| 166 | | |
| 167 | | way[highway=secondary] node:connection { |
| 168 | | set hwy_cont_secondary; |
| 169 | | } |
| 170 | | |
| 171 | | way[highway=tertiary] node:connection { |
| 172 | | set hwy_cont_tertiary; |
| 173 | | } |
| 174 | | |
| 175 | | way[highway=unclassified] node:connection { |
| 176 | | set hwy_cont_unclassified; |
| 177 | | } |
| 178 | | |
| 179 | | way[highway=residential] node:connection, |
| 180 | | way[highway=living_street] node:connection { |
| 181 | | set hwy_cont_residential; |
| 182 | | } |
| 183 | | |
| 184 | | |
| 185 | | /* ---- Sudden Highway Type Change Checks ---- */ |
| 186 | | |
| 187 | | /* Motorway Continuity */ |
| 188 | | way[highway=motorway].hwy_cont_primary >[index=-1] node, |
| 189 | | way[highway=motorway].hwy_cont_primary >[index=1] node { |
| 190 | | throwWarning: "motorway connected to primary road - check for sudden highway type change"; |
| 191 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 192 | | } |
| 193 | | |
| 194 | | way[highway=motorway].hwy_cont_secondary >[index=-1] node, |
| 195 | | way[highway=motorway].hwy_cont_secondary >[index=1] node { |
| 196 | | throwWarning: "motorway connected to secondary road - check for sudden highway type change"; |
| 197 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 198 | | } |
| 199 | | |
| 200 | | way[highway=motorway].hwy_cont_tertiary >[index=-1] node, |
| 201 | | way[highway=motorway].hwy_cont_tertiary >[index=1] node { |
| 202 | | throwWarning: "motorway connected to tertiary road - check for sudden highway type change"; |
| 203 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 204 | | } |
| 205 | | |
| 206 | | way[highway=motorway].hwy_cont_unclassified >[index=-1] node, |
| 207 | | way[highway=motorway].hwy_cont_unclassified >[index=1] node { |
| 208 | | throwWarning: "motorway connected to unclassified road - check for sudden highway type change"; |
| 209 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 210 | | } |
| 211 | | |
| 212 | | way[highway=motorway].hwy_cont_residential >[index=-1] node, |
| 213 | | way[highway=motorway].hwy_cont_residential >[index=1] node { |
| 214 | | throwWarning: "motorway connected to residential road - check for sudden highway type change"; |
| 215 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 216 | | } |
| 217 | | |
| 218 | | |
| 219 | | /* Trunk Continuity */ |
| 220 | | way[highway=trunk].hwy_cont_secondary >[index=-1] node, |
| 221 | | way[highway=trunk].hwy_cont_secondary >[index=1] node { |
| 222 | | throwWarning: "trunk connected to secondary road - check for sudden highway type change"; |
| 223 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 224 | | } |
| 225 | | |
| 226 | | way[highway=trunk].hwy_cont_tertiary >[index=-1] node, |
| 227 | | way[highway=trunk].hwy_cont_tertiary >[index=1] node { |
| 228 | | throwWarning: "trunk connected to tertiary road - check for sudden highway type change"; |
| 229 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 230 | | } |
| 231 | | |
| 232 | | way[highway=trunk].hwy_cont_unclassified >[index=-1] node, |
| 233 | | way[highway=trunk].hwy_cont_unclassified >[index=1] node { |
| 234 | | throwWarning: "trunk connected to unclassified road - check for sudden highway type change"; |
| 235 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 236 | | } |
| 237 | | |
| 238 | | way[highway=trunk].hwy_cont_residential >[index=-1] node, |
| 239 | | way[highway=trunk].hwy_cont_residential >[index=1] node { |
| 240 | | throwWarning: "trunk connected to residential road - check for sudden highway type change"; |
| 241 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 242 | | } |
| 243 | | |
| 244 | | |
| 245 | | /* Primary Continuity */ |
| 246 | | way[highway=primary].hwy_cont_tertiary >[index=-1] node, |
| 247 | | way[highway=primary].hwy_cont_tertiary >[index=1] node { |
| 248 | | throwWarning: "primary connected to tertiary road - check for sudden highway type change"; |
| 249 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 250 | | } |
| 251 | | |
| 252 | | way[highway=primary].hwy_cont_unclassified >[index=-1] node, |
| 253 | | way[highway=primary].hwy_cont_unclassified >[index=1] node { |
| 254 | | throwWarning: "primary connected to unclassified road - check for sudden highway type change"; |
| 255 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 256 | | } |
| 257 | | |
| 258 | | way[highway=primary].hwy_cont_residential >[index=-1] node, |
| 259 | | way[highway=primary].hwy_cont_residential >[index=1] node { |
| 260 | | throwWarning: "primary connected to residential road - check for sudden highway type change"; |
| 261 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/1"); |
| 262 | | } |
| 263 | | |
| 264 | | |
| 265 | | /* Secondary Continuity */ |
| 266 | | way[highway=secondary].hwy_cont_unclassified >[index=-1] node, |
| 267 | | way[highway=secondary].hwy_cont_unclassified >[index=1] node { |
| 268 | | throwWarning: "secondary connected to unclassified road - check for sudden highway type change"; |
| 269 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/2"); |
| 270 | | } |
| 271 | | |
| 272 | | way[highway=secondary].hwy_cont_residential >[index=-1] node, |
| 273 | | way[highway=secondary].hwy_cont_residential >[index=1] node { |
| 274 | | throwWarning: "secondary connected to residential road - check for sudden highway type change"; |
| 275 | | group: tr("Sudden highway type change -- OSMOSE Item 1090/2"); |
| 276 | | } |
| | 144 | throwError: "2040: Source; administrative boundary does not have source tag"; |
| | 145 | group: "OSMOSE"; |
| | 146 | } |
| | 147 | |