Changes between Version 5 and Version 6 of Rules/CzechRepublicAddressSystem
- Timestamp:
- 2016-11-21T23:47:00+01:00 (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Rules/CzechRepublicAddressSystem
v5 v6 7 7 { 8 8 title: "Czech Republic Address System"; 9 version: "1. [[revision]]_[[date]]";9 version: "1.6_2016-11-21"; 10 10 description: "Rules implementing checks for address tags specified by Czech Republic Address System. Only used in CZ and SK."; 11 11 author: "Jose Riha"; … … 32 32 orientacne cislo musi vyhovovat reg. vyrazu popisanemu na wiki: http://wiki.openstreetmap.org/wiki/Cs:WikiProject_Czech_Republic/Address_system 33 33 */ 34 *[addr:streetnumber][addr:streetnumber !~ /^[1-9]+[0-9]*[A-Za-z]{0,1}$/]{ 34 *[addr:streetnumber][addr:streetnumber !~ /^[1-9]+[0-9]*[A-Za-z]{0,1}$/][inside("CZ,SK")]{ 35 35 throwError: tr("Format of streetnumber not recognized - expected a number followed by an optional single letter"); 36 36 } … … 39 39 supisne cislo musi vyhovovat reg. vyrazu popisanemu na wiki: http://wiki.openstreetmap.org/wiki/Cs:WikiProject_Czech_Republic/Address_system 40 40 */ 41 *[addr:conscriptionnumber][addr:conscriptionnumber !~ /^[1-9]+[0-9]*$/]{ 41 *[addr:conscriptionnumber][addr:conscriptionnumber !~ /^[1-9]+[0-9]*$/][inside("CZ,SK")]{ 42 42 throwError: tr("Format of {0} not recognized - expected a natural number", "{0.key}"); 43 43 } … … 46 46 evidencne cislo musi vyhovovat reg. vyrazu popisanemu na wiki: http://wiki.openstreetmap.org/wiki/Cs:WikiProject_Czech_Republic/Address_system 47 47 */ 48 *[addr:provisionalnumber][addr:provisionalnumber !~ /^[1-9]+[0-9]*$/]{ 48 *[addr:provisionalnumber][addr:provisionalnumber !~ /^[1-9]+[0-9]*$/][inside("CZ")]{ 49 49 throwError: tr("Format of {0} not recognized - expected a natural number", "{0.key}"); 50 50 } … … 53 53 kazda adresa by mala obsahovat bud addr:street alebo addr:place, pripadne oboje 54 54 */ 55 *[any(tag("addr:streetnumber"),tag("addr:conscriptionnumber"),tag("addr:housenumber"))][!addr:street][!addr:place] { 55 *[any(tag("addr:streetnumber"),tag("addr:conscriptionnumber"),tag("addr:housenumber"))][!addr:street][!addr:place][inside("CZ,SK")] { 56 56 throwWarning: tr("Each address should have at least addr:street or addr:place tag"); 57 57 } … … 61 61 ziaden dom by nemal mat sucasne supisne a evidencne cislo 62 62 */ 63 *[addr:conscriptionnumber][addr:provisionalnumber]{ 63 *[addr:conscriptionnumber][addr:provisionalnumber][inside("CZ")]{ 64 64 throwError: tr("There should be either addr:conscriptionnumber or addr:provisionalnumber, not both at the same time"); 65 65 } … … 68 68 streetnumber by malo byt pouzite len spolu s orientacnym cislom 69 69 */ 70 *[addr:streetnumber][!addr:street]{ 70 *[addr:streetnumber][!addr:street][inside("CZ,SK")]{ 71 71 throwWarning: tr("Addr:streetnumber used without an addr:street tag"); 72 72 } … … 75 75 v pripade pouzitia supisneho aj orientacneho cisla by hodnota housenumber mala obsahovat kombinaciu oboch vo forme supisne/orientacne cislo 76 76 */ 77 *[addr:housenumber][addr:streetnumber][addr:conscriptionnumber][not(tag("addr:housenumber") = concat(tag("addr:conscriptionnumber"),"/",tag("addr:streetnumber")))]{ 77 *[addr:housenumber][addr:streetnumber][addr:conscriptionnumber][not(tag("addr:housenumber") = concat(tag("addr:conscriptionnumber"),"/",tag("addr:streetnumber")))][inside("CZ,SK")]{ 78 78 throwWarning: tr("Addr:housenumber in unexpected format (expected: conscriptionnumber/streetnumber)"); 79 79 fixAdd: concat("addr:housenumber=",tag("addr:conscriptionnumber"),"/",tag("addr:streetnumber")); … … 83 83 v pripade pouzitia evidencneho aj orientacneho cisla by hodnota housenumber mala obsahovat kombinaciu oboch vo forme ev.evidencne/orientacne cislo 84 84 */ 85 *[addr:housenumber][addr:streetnumber][addr:provisionalnumber][not(tag("addr:housenumber") = concat("ev.",tag("addr:provisionalnumber"),"/",tag("addr:streetnumber")))]{ 85 *[addr:housenumber][addr:streetnumber][addr:provisionalnumber][not(tag("addr:housenumber") = concat("ev.",tag("addr:provisionalnumber"),"/",tag("addr:streetnumber")))][inside("CZ")]{ 86 86 throwWarning: tr("Addr:housenumber in unexpected format (expected: ev.+provisional/streetnumber)"); 87 87 fixAdd: concat("addr:housenumber=ev.",tag("addr:provisionalnumber"),"/",tag("addr:streetnumber")); … … 91 91 v pripade pouzitia supisneho aj orientacneho cisla by hodnota housenumber mala obsahovat kombinaciu oboch vo forme supisne/orientacne cislo 92 92 */ 93 *[!addr:housenumber][addr:streetnumber][addr:conscriptionnumber]{ 93 *[!addr:housenumber][addr:streetnumber][addr:conscriptionnumber][inside("CZ,SK")]{ 94 94 throwWarning: tr("Addr:housenumber missing - expected: conscriptionnumber/streetnumber"); 95 95 fixAdd: concat("addr:housenumber=",tag("addr:conscriptionnumber"),"/",tag("addr:streetnumber")); … … 99 99 v pripade pouzitia evidencneho aj orientacneho cisla by hodnota housenumber mala obsahovat kombinaciu oboch vo forme ev.evidencne/orientacne cislo 100 100 */ 101 *[!addr:housenumber][addr:streetnumber][addr:provisionalnumber]{ 101 *[!addr:housenumber][addr:streetnumber][addr:provisionalnumber][inside("CZ")]{ 102 102 throwWarning: tr("Addr:housenumber missing - expected: ev.+provisionalnumber/streetnumber"); 103 103 fixAdd: concat("addr:housenumber=ev.",tag("addr:provisionalnumber"),"/",tag("addr:streetnumber")); … … 107 107 pre dom, ktory je identifikovany len supisnym cislom, by sa toto cislo malo objavit aj v housenumber 108 108 */ 109 *[addr:housenumber][!addr:streetnumber][addr:conscriptionnumber][not(tag("addr:housenumber") = tag("addr:conscriptionnumber"))]{ 109 *[addr:housenumber][!addr:streetnumber][addr:conscriptionnumber][not(tag("addr:housenumber") = tag("addr:conscriptionnumber"))][inside("CZ,SK")]{ 110 110 throwWarning: tr("{0} should contain addr:conscriptionnumber","{0.key}"); 111 111 fixAdd: concat("addr:housenumber=",tag("addr:conscriptionnumber")); … … 115 115 pre dom, ktory je identifikovany len evidencnym cislom, by sa toto cislo malo objavit aj v housenumber 116 116 */ 117 *[addr:housenumber][!addr:streetnumber][addr:provisionalnumber][not(tag("addr:housenumber") = concat("ev.",tag("addr:provisionalnumber")))]{ 117 *[addr:housenumber][!addr:streetnumber][addr:provisionalnumber][not(tag("addr:housenumber") = concat("ev.",tag("addr:provisionalnumber")))][inside("CZ")]{ 118 118 throwWarning: tr("{0} should contain ev. + addr:provisionalnumber","{0.key}"); 119 119 fixAdd: concat("addr:housenumber=ev.",tag("addr:provisionalnumber")); … … 121 121 122 122 /* if housenumber is not empty we want to have conscriptionnumber and/or streetnumber populated as well */ 123 *[addr:housenumber][!addr:streetnumber][!addr:conscriptionnumber][addr:housenumber =~ /\/[1-9]+/] { 123 *[addr:housenumber][!addr:streetnumber][!addr:conscriptionnumber][addr:housenumber =~ /\/[1-9]+/][inside("CZ,SK")] { 124 124 throwWarning: tr("Streetnumber and conscriptionnumber missing"); 125 125 } … … 128 128 detekcia castych preklepov 129 129 */ 130 *[addr:streetnumbe]{ 130 *[addr:streetnumbe][inside("CZ,SK")]{ 131 131 throwError: tr("Typo detected with streetnumber"); 132 132 suggestAlternative: "addr:streetnumber"; … … 134 134 } 135 135 136 *[addr:conscriptionumber]{ 136 *[addr:conscriptionumber][inside("CZ,SK")]{ 137 137 throwError: tr("Typo detected with conscriptionnumber"); 138 138 suggestAlternative: "addr:conscriptionnumber";
