| 433 | | *[url =~ /.*ptna\.openstreetmap\.de\/gtfs.+/][url !~ /.*(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}.*/], |
| 434 | | *[website =~ /.*ptna\.openstreetmap\.de\/gtfs.+/][website !~ /.*(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}.*/], |
| 435 | | *[source =~ /.*ptna\.openstreetmap\.de\/gtfs.+/][source !~ /.*(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}.*/] { |
| | 425 | *[url =~ /ptna\.openstreetmap\.de\/gtfs/][url !~ /(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}/], |
| | 426 | *[website =~ /ptna\.openstreetmap\.de\/gtfs/][website !~ /(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}/], |
| | 427 | *[source =~ /ptna\.openstreetmap\.de\/gtfs/][source !~ /(network=([a-zA-Z]+[-]){2,}|release_date=)\d{4}(-\d\d){2}/] { |
| 449 | | *[local_ref][ref:IFOPT]!.ErrorSyntaxIFOPT[public_transport =~ /platform|stop_position/][!(tag("local_ref") == get(regexp_match("^(.+:){4}(.+)", tag("ref:IFOPT")), 2))], |
| 450 | | *[local_ref][ref:IFOPT]!.ErrorSyntaxIFOPT[public_transport =~ /platform|stop_position/][!(tag("local_ref") == get(regexp_match("^(.+:){4}(.+)", tag("gtfs:stop_id")), 2))] { |
| | 441 | *[local_ref][ref:IFOPT]!.ErrorSyntaxIFOPT[public_transport =~ /^(platform|stop_position)$/][!(tag("local_ref") == get(regexp_match("^(.+:){4}(.+)", tag("ref:IFOPT")), 2))], |
| | 442 | *[local_ref][ref:IFOPT]!.ErrorSyntaxIFOPT[public_transport =~ /^(platform|stop_position)$/][!(tag("local_ref") == get(regexp_match("^(.+:){4}(.+)", tag("gtfs:stop_id")), 2))] { |
| | 475 | /* release_date in url */ |
| | 476 | relation.PtRouteMaster[gtfs:release_date][url =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("url")), 1))], |
| | 477 | relation.PtRouteMaster[gtfs:release_date][website =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("website")), 1))], |
| | 478 | relation.PtRouteMaster[gtfs:release_date][source =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("source")), 1))], |
| | 479 | relation.PtRouteMaster[gtfs:release_date][url =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("url")), 1))], |
| | 480 | relation.PtRouteMaster[gtfs:release_date][website =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("website")), 1))], |
| | 481 | relation.PtRouteMaster[gtfs:release_date][source =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("source")), 1))], |
| | 482 | relation.PtRoute[gtfs:release_date][url =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("url")), 1))], |
| | 483 | relation.PtRoute[gtfs:release_date][website =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("website")), 1))], |
| | 484 | relation.PtRoute[gtfs:release_date][source =~ /ptna\.openstreetmap\.de\/gtfs.+network=([a-zA-Z]+[-]){2,}\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+network\\=.+-(\\d{4}(-\\d{2}){2}).+", tag("source")), 1))], |
| | 485 | relation.PtRoute[gtfs:release_date][url =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("url")), 1))], |
| | 486 | relation.PtRoute[gtfs:release_date][website =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("website")), 1))], |
| | 487 | relation.PtRoute[gtfs:release_date][source =~ /ptna\.openstreetmap\.de\/gtfs.+release_date=\d{4}(-\d\d){2}/][!(tag("gtfs:release_date") == get(regexp_match(".+release_date\\=(\\d{4}(-\\d{2}){2}).+", tag("source")), 1))] { |
| | 488 | throwWarning: tr("{0} and {1} in {2} differ", "{1.tag}", "{1.key}", "{2.key}"); |
| | 489 | group: tr("Public Transport GTFS: conflicting tags"); |
| | 490 | assertMatch: "relation type=route route=train gtfs:release_date=2020-09-28 source=\"https://ptna.openstreetmap.de/gtfs/DE/trips.php?feed=DE-BW-VAG&release_date=2020-07-28&route_id=10-10-I-j20-1\""; |
| | 491 | assertNoMatch: "relation type=route route=train gtfs:release_date=2020-07-28 source=\"https://ptna.openstreetmap.de/gtfs/DE/trips.php?network=DE-BW-VAG-2020-07-28&route_id=10-10-I-j20-1\""; |
| | 492 | assertNoMatch: "relation type=route route=train gtfs:release_date=2020-07-28 source=\"https://ptna.openstreetmap.de/gtfs/DE/trips.php?feed=DE-BW-VAG&release_date=2020-07-28&route_id=10-10-I-j20-1\""; |
| | 493 | } |
| | 494 | |