Files
iD/data/keepRight.json
Martin Raifer 75edf18586 fix typos
2023-01-19 11:56:57 +01:00

504 lines
18 KiB
JSON

{
"localizeStrings": {
"this node": "this_node",
"this way": "this_way",
"this relation": "this_relation",
"this one-way": "this_oneway",
"this highway": "this_highway",
"this railway": "this_railway",
"this waterway": "this_waterway",
"this cycleway": "this_cycleway",
"this footpath": "this_footpath",
"this cycleway/footpath": "this_cycleway_footpath",
"this riverbank": "this_riverbank",
"this crossing": "this_crossing",
"this railway crossing": "this_railway_crossing",
"this bridge": "this_bridge",
"this tunnel": "this_tunnel",
"this boundary": "this_boundary",
"this turn-restriction": "this_turn_restriction",
"this roundabout": "this_roundabout",
"this mini-roundabout": "this_mini_roundabout",
"this track": "this_track",
"this feature": "this_feature",
"highway": "highway",
"railway": "railway",
"waterway": "waterway",
"cycleway": "cycleway",
"cycleway_footpath": "cycleway/footpath",
"riverbank": "riverbank",
"place_of_worship": "place_of_worship",
"pub": "pub",
"restaurant": "restaurant",
"school": "school",
"university": "university",
"hospital": "hospital",
"library": "library",
"theatre": "theatre",
"courthouse": "courthouse",
"bank": "bank",
"cinema": "cinema",
"pharmacy": "pharmacy",
"cafe": "cafe",
"fast_food": "fast_food",
"fuel": "fuel",
"from": "from",
"to": "to",
"left-hand": "left_hand",
"right-hand": "right_hand"
},
"errorTypes": {
"20": {
"title": "multiple nodes on the same spot",
"severity": "warning",
"description": "There is more than one node in this spot. Offending node IDs: $1",
"IDs": ["20"],
"regex": "IDs: ((?:#\\d+,?)+)"
},
"30": {
"title": "non-closed_areas",
"severity": "error",
"description": "This way is tagged with '$1' and should be closed-loop.",
"IDs": ["this", ""],
"regex": "(this way) is tagged with '(.+)'"
},
"40": {
"title": "dead-ended one-ways",
"severity": "error",
"description": "The first node (id $1) of this one-way is not connected to any other way",
"IDs": ["n", "this"],
"regex": "\\(id (\\d+)\\) of (this one-way)"
},
"41": {
"title": "",
"severity": "error",
"description": "The last node (id $1) of this one-way is not connected to any other way",
"IDs": ["n", "this"],
"regex": "\\(id (\\d+)\\) of (this one-way)"
},
"42": {
"title": "",
"severity": "error",
"description": "This node cannot be reached because one-ways only lead away from here",
"IDs": ["this"],
"regex": "(this node)"
},
"43": {
"title": "",
"severity": "error",
"description": "You cannot escape from this node because one-ways only lead to here",
"IDs": ["this"],
"regex": "(this node)"
},
"50": {
"title": "almost-junctions",
"severity": "error",
"description": "This node is very close but not connected to way #$1",
"IDs": ["this", "w"],
"regex": "(this node) is very close but not connected to way #(\\d+)"
},
"60": {
"title": "deprecated tags",
"severity": "warning",
"description": "This $1 uses deprecated tag $2. Please use $3 instead!",
"IDs": ["this", "", ""],
"regex": "(this (?:node|way|relation)) uses deprecated tag '(.+)'\\. Please use "(.+)""
},
"70": {
"title": "missing tags",
"severity": "error",
"description": "This $1 has an empty tag: $2",
"IDs": ["this", ""],
"regex": "(this (?:node|way|relation)) has an empty tag: "(.+)=""
},
"71": {
"title": "",
"severity": "error",
"description": "This way has no tags",
"IDs": ["this"],
"regex": "(this way)"
},
"72": {
"title": "",
"severity": "error",
"description": "This node is not member of any way and does not have any tags",
"IDs": ["this"],
"regex": "(this node)"
},
"73": {
"title": "",
"severity": "error",
"description": "This way has a $1 tag but no highway tag",
"IDs": ["this", ""],
"regex": "(this way) has a (.+) tag"
},
"74": {
"title": "missing tags",
"severity": "error",
"description": "This $1 has an empty tag: $2",
"IDs": ["this", ""],
"regex": "(this (?:node|way|relation)) has an empty tag: "(.+)=""
},
"75": {
"description": "This (node|way|relation) has a name \\((.+)\\) but no other tag",
"IDs": ["this", ""],
"regex": "(this (?:node|way|relation)) has a name \\((.+)\\)"
},
"90": {
"title": "motorways without ref",
"severity": "error",
"description": "This way is tagged as motorway and therefore needs a ref nat_ref or int_ref tag",
"IDs": ["this"],
"regex": "(this way)"
},
"100": {
"title": "places of worship without religion",
"severity": "error",
"description": "This $1 is tagged as place of worship and therefore needs a religion tag",
"IDs": ["this"],
"regex": "(this (?:node|way|relation))"
},
"110": {
"title": "point of interest without name",
"severity": "error",
"description": "This node is tagged as $1 and therefore needs a name tag",
"IDs": ["this", ""],
"regex": "(this (?:node|way|relation)) is tagged as (.+) and"
},
"120": {
"title": "ways without nodes",
"severity": "error",
"description": "This way has just one single node",
"IDs": ["this"],
"regex": "(this way)"
},
"130": {
"title": "floating islands",
"severity": "error",
"description": "This way is not connected to the rest of the map",
"IDs": ["this"],
"regex": "(this way)"
},
"150": {
"title": "railway crossing without tag",
"severity": "error",
"description": "This crossing of a highway and a railway needs to be tagged as railway=crossing or railway=level_crossing",
"IDs": ["this"],
"regex": "(this crossing)"
},
"160": {
"title": "wrongly used railway tag",
"severity": "error",
"description": "There are ways in different layers coming together in this railway crossing. There are ways tagged as tunnel or bridge coming together in this railway crossing",
"IDs": ["this"],
"regex": "(this railway crossing)"
},
"170": {
"title": "FIXME tagged items",
"severity": "error",
"description": "This feature has a FIXME tag: (.*)",
"IDs": ["this"],
"regex": "(this feature) has a FIXME tag: (.*)"
},
"180": {
"title": "relations without type",
"severity": "error",
"description": "This relation has no type tag which is mandatory for relations",
"IDs": ["this"],
"regex": "(this relation)"
},
"190": {
"title": "intersections without junctions",
"severity": "error",
"description": "This $1 intersects the $2 #$3 but there is no junction node",
"IDs": ["this", "", "w"],
"regex": "(this .+) intersects the (.+) #(\\d+)"
},
"200": {
"title": "overlapping ways",
"severity": "error",
"description": "This $1 overlaps the $2 #$3",
"IDs": ["this", "", "w"],
"regex": "(this .+) overlaps the (.+) #(\\d+)"
},
"210": {
"title": "loopings",
"severity": "error",
"description": "These errors contain self intersecting ways"
},
"211": {
"title": "",
"severity": "error",
"description": "This way contains more than one node at least twice. Nodes are $1.",
"IDs": ["this", "211"],
"regex": "(this way) contains more than one node at least twice. Nodes are ((?:#\\d+(?:, )?)+)\\."
},
"212": {
"title": "",
"severity": "error",
"description": "This way has only two different nodes and contains one of them more than once",
"IDs": ["this"],
"regex": "(this way)"
},
"220": {
"title": "misspelled tags",
"severity": "error",
"description": "This $1 is tagged '$2' where $3 looks like $4",
"regex": "(this (?:node|way|relation)) is tagged '(.+)' where "(.+)" looks like "(.+)""
},
"221": {
"title": "",
"severity": "error",
"description": "The key of this $1's tag is 'key': $2",
"regex": "(this (?:node|way|relation))\\'s tag is \\'key\\': (.+)"
},
"230": {
"title": "layer conflicts",
"severity": "error",
"description": "This node is a junction of ways on different layers.",
"IDs": ["this"],
"regex": "(this node)"
},
"231": {
"title": "mixed layers intersection",
"severity": "error",
"description": "This node is a junction of ways on different layers: $1",
"IDs": ["this", "231"],
"regex": "(this node) is a junction of ways on different layers: (.+)"
},
"232": {
"title": "strange layers",
"severity": "error",
"description": "This $1 is tagged with layer $2. This need not be an error, but it looks strange",
"IDs": ["this", ""],
"regex": "(this (?:bridge|tunnel)) is tagged with layer (-?\\d+)\\."
},
"270": {
"title": "motorways connected directly",
"severity": "error",
"description": "This node is a junction of a motorway and a highway other than motorway, motorway_link, trunk, rest_area or construction. Service or unclassified is only valid if it has access=no/private or it leads to a motorway service area or if it is a service=parking_aisle.",
"IDs": ["this"],
"regex": "(this node)"
},
"280": {
"title": "boundaries",
"severity": "error",
"description": "Administrative Boundaries can be expressed either by tagging ways or by adding them to a relation. They should be closed-loop sequences of ways, they must not self-intersect or split and they must have a name and an admin_level."
},
"281": {
"title": "missing name",
"severity": "error",
"description": "This boundary has no name",
"IDs": ["this"],
"regex": "(this boundary)"
},
"282": {
"title": "missing admin level",
"severity": "error",
"description": "The boundary of $1 has no (?:valid numeric)?admin_level",
"regex": "of (.+) has"
},
"283": {
"title": "no closed loop",
"severity": "error",
"description": "The boundary of $1 is not closed-loop",
"regex": "boundary of (.+) is"
},
"284": {
"title": "splitting boundary",
"severity": "error",
"description": "The boundary of $1 splits here",
"regex": "boundary of (.+) splits"
},
"285": {
"title": "admin_level too high",
"severity": "error",
"description": "This boundary-way has admin_level $1 but belongs to a relation with lower admin_level (higher priority); it should have the lowest admin_level of all relations",
"IDs": ["this", ""],
"regex": "(this boundary)-way has admin_level (-?\\d+) but"
},
"290": {
"title": "restrictions",
"severity": "error",
"description": "Analyses all relations tagged type=restriction or following variations type=restriction:hgv type=restriction:caravan type=restriction:motorcar type=restriction:bus type=restriction:agricultural type=restriction:motorcycle type=restriction:bicycle and type=restriction:hazmat"
},
"291": {
"title": "missing type",
"severity": "error",
"description": "This turn-restriction has no (?:known )?restriction type",
"IDs": ["this"],
"regex": "(this turn-restriction) has"
},
"292": {
"title": "missing from way",
"severity": "error",
"description": "This turn-restriction needs exactly one from member. This one has $1",
"IDs": ["this", ""],
"regex": "(this turn-restriction) needs.+has (\\d+)"
},
"293": {
"title": "missing to way",
"severity": "error",
"description": "This turn-restriction needs exactly one to member. This one has $1",
"IDs": ["this", ""],
"regex": "(this turn-restriction) needs.+has (\\d+)"
},
"294": {
"title": "from or to not a way",
"severity": "error",
"description": "From- and To-members of this turn-restriction need to be ways. $1",
"IDs": ["this", "294"],
"regex": "(this turn-restriction)~.+ways\\. ((?:(?:from|to) (?:node|relation) #\\d+,?)+)"
},
"295": {
"title": "via is not on the way ends",
"severity": "error",
"description": "via (node #$1) is not the first or the last member of (from|to) (way #$3)",
"IDs": ["this", "n", "", "w"],
"regex": "(this turn-restriction)~via \\(node #(\\d+)\\).+ of (from|to) \\(way #(\\d+)\\)"
},
"296": {
"title": "wrong restriction angle",
"severity": "error",
"description": "This turn-restriction type is $1, but angle is $2 degrees. Maybe the restriction type is not appropriate?",
"IDs": ["this", "", ""],
"regex": "(this turn-restriction)~.+is (\\w+), but angle is (-?\\d+)"
},
"297": {
"title": "wrong direction of to member",
"severity": "error",
"description": "wrong direction of to way $1",
"IDs": ["this", "w"],
"regex": "(this turn-restriction)~.+to way (\\d+)"
},
"298": {
"title": "already restricted by oneway",
"severity": "error",
"description": "entry already prohibited by oneway tag on $1",
"IDs": ["this", "w"],
"regex": "(this turn-restriction)~.+tag on (\\d+)"
},
"300": {
"title": "missing maxspeed",
"severity": "warning",
"description": "This highway is missing a maxspeed tag",
"IDs": ["this"],
"regex": "(this highway)"
},
"310": {
"title": "roundabouts",
"severity": "error",
"description": "Analyses ways with tag junction=roundabout. More then one way can form a roundabout. It supports tag oneway=-1"
},
"311": {
"title": "not closed loop",
"severity": "error",
"description": "This way is part of a roundabout but is not closed-loop. (split carriageways approaching a roundabout should not be tagged as roundabout)",
"IDs": ["this"],
"regex": "(this way)"
},
"312": {
"title": "wrong direction",
"severity": "error",
"description": "If this ((?:mini_)?roundabout) is in a country with (left|right)-hand traffic then its orientation goes the wrong way around",
"IDs": ["this", ""],
"regex": "(this (?:mini_)?roundabout) is in a country with ((?:left|right)-hand)"
},
"313": {
"title": "faintly connected",
"severity": "error",
"description": "This roundabout has only $1 other roads connected. Roundabouts typically have three",
"IDs": ["this", ""],
"regex": "(this roundabout) has only (\\d) other"
},
"320": {
"title": "*_link connections",
"severity": "error",
"description": "This way is tagged as highway=$1_link but doesn't have a connection to any other $1 or $1_link",
"IDs": ["this", "", "", "", ""],
"regex": "(this way) is tagged as (highway=.+) but doesn't have a connection to any other (.+) or (.+)"
},
"350": {
"title": "bridge-tags",
"severity": "error",
"description": "This bridge does not have a tag in common with its surrounding ways that shows the purpose of this bridge. There should be one of these tags: (.+)",
"NOTE": "Group can be arbitrary list of form: key=value,key=value,key=value...",
"IDs": ["this", ""],
"regex": "(this bridge).*tags: (.+)"
},
"360": {
"title": "language unknown",
"severity": "warning",
"description": "It would be nice if this (node|way|relation) had an additional tag 'name:XX=(.+)' where XX shows the language of its name '\\2'",
"IDs": ["this", ""],
"regex": "(this (?:node|way|relation)) had an additional tag 'name:XX=(.+)' where"
},
"370": {
"title": "doubled places",
"severity": "error",
"description": "This node has tags in common with the surrounding way #$1 ((?:\\(including the name '.+'\\) )?)and seems to be redundant",
"IDs": ["this", "w", "370"],
"regex": "(this node) has tags in common with the surrounding way #(\\d+) ((?:\\(including the name '.+'\\) )?)and"
},
"380": {
"title": "non-physical use of sport-tag",
"severity": "error",
"description": "This way is tagged sport=$1 but has no physical tag like e.g. leisure, building, amenity or highway",
"IDs": ["this", ""],
"regex": "(this way) is tagged (sport=.+) but"
},
"390": {
"title": "missing tracktype",
"severity": "warning",
"description": "This track doesn''t have a tracktype",
"IDs": ["this"],
"regex": "(this track)"
},
"400": {
"title": "geometry glitches",
"severity": "error",
"description": ""
},
"401": {
"title": "missing turn restriction",
"severity": "error",
"description": "ways $1 and $2 join in a very sharp angle here and there is no oneway tag or turn restriction that prevents turning( from way (\\1|\\2) to (\\1|\\2))?",
"IDs": ["w", "w"],
"regex": "ways (\\d+) and (\\d+) join"
},
"402": {
"title": "impossible angles",
"severity": "error",
"description": "this way bends in a very sharp angle here",
"IDs": ["this"],
"regex": "(this way)"
},
"410": {
"title": "website",
"severity": "error",
"description": "Web pages are analyzed. Web page is defined by any of the following tags website=* url=* website:mobile=* contact:website=* contact:url=* image=* source:website=* or source:url=*"
},
"411": {
"title": "http error",
"severity": "error",
"description": "The URL (<a target=_blank href=$1>$1</a>) cannot be opened (HTTP status code $2)",
"IDs": ["this", "url", ""],
"regex": "(this feature)~.+ href=([^>]+)>.+ code (\\d+)\\)"
},
"412": {
"title": "domain hijacking",
"severity": "error",
"description": "Possible domain squatting: <a target=_blank href=$1>$1</a>. Suspicious text is: \"$2\"",
"IDs": ["this", "url", ""],
"regex": "(this feature)~.+ href=([^>]+)>.+ is: &quot;(.+)&quot;"
},
"413": {
"title": "non-match",
"severity": "error",
"description": "Content of the URL (<a target=_blank href=$1>$1</a>) did not contain these keywords: ($2)",
"IDs": ["this", "url", ""],
"regex": "(this feature)~.+ href=([^>]+)>.+ keywords: \\((.+)\\)"
}
}
}