1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
/* #9757, #10869, #18266 */
*["telecom:medium" =~ /.+;(.+)?/],
*["addr:street" =~ /.+;(.+)?/],
*[highway =~ /.+;(.+)?/],
*[lanes =~ /.+;(.+)?/],
*[maxspeed =~ /.+;(.+)?/],
*[name =~ /.+;(.+)?/],
*[surface =~ /.+;(.+)?/],
*[water =~ /.+;(.+)?/] {
throwWarning: tr("{0} with multiple values", "{0.key}");
}
*[source =~ /^(;.*|.*;;.*|.*;)$/],
*["source:addr" =~ /^(;.*|.*;;.*|.*;)$/],
*["source:maxspeed" =~ /^(;.*|.*;;.*|.*;)$/],
*["source:name" =~ /^(;.*|.*;;.*|.*;)$/],
*["source:position" =~ /^(;.*|.*;;.*|.*;)$/],
*["source:postcode" =~ /^(;.*|.*;;.*|.*;)$/],
*[ref =~ /^(;.*|.*;;.*|.*;)$/],
*[int_ref =~ /^(;.*|.*;;.*|.*;)$/],
*[old_ref =~ /^(;.*|.*;;.*|.*;)$/],
*[source_ref =~ /^(;.*|.*;;.*|.*;)$/],
*[route_ref =~ /^(;.*|.*;;.*|.*;)$/],
*[attribution =~ /^(;.*|.*;;.*|.*;)$/],
*[name =~ /^(;.*|.*;;.*|.*;)$/],
*[alt_name =~ /^(;.*|.*;;.*|.*;)$/],
*[note =~ /^(;.*|.*;;.*|.*;)$/],
*[fixme =~ /^(;.*|.*;;.*|.*;)$/],
*["addr:housenumber" =~ /^(;.*|.*;;.*|.*;)$/],
*[destination =~ /^(;.*|.*;;.*|.*;)$/],
*[exit_to =~ /^(;.*|.*;;.*|.*;)$/],
*[surface =~ /^(;.*|.*;;.*|.*;)$/],
*["building:use" =~ /^(;.*|.*;;.*|.*;)$/],
*[traffic_sign =~ /^(;.*|.*;;.*|.*;)$/],
*[voltage =~ /^(;.*|.*;;.*|.*;)$/],
*[sport =~ /^(;.*|.*;;.*|.*;)$/],
*[cuisine =~ /^(;.*|.*;;.*|.*;)$/] {
throwWarning: tr("empty value in semicolon-separated ''{0}''", "{0.key}");
assertMatch: "node ref=;A1";
assertMatch: "node ref=A1;";
assertMatch: "node ref=;";
assertMatch: "node ref=A1;;A2";
assertNoMatch: "node ref=A1";
assertNoMatch: "node ref=A1;A2";
}
|