]> git.openstreetmap.org Git - nominatim.git/commitdiff
fix AddressDetails->getAddressDetails, add tests
authormarc tobias <mtmail@gmx.net>
Thu, 20 Sep 2018 00:16:01 +0000 (02:16 +0200)
committermarc tobias <mtmail@gmx.net>
Thu, 20 Sep 2018 00:16:01 +0000 (02:16 +0200)
lib/AddressDetails.php
test/php/Nominatim/AddressDetailsTest.php [new file with mode: 0644]
test/php/fixtures/address_details_10_downing_street.json [new file with mode: 0644]

index badf868de8774ab5c568b1119a51594e8c987882..e6501b572d5b59b3632a0d61e14f711f5fa729c9 100644 (file)
@@ -22,9 +22,9 @@ class AddressDetails
         }
 
         $sSQL = 'SELECT *,';
-        $sSQL .= '  get_name_by_language(name,'.$mLangPref.') as localname';
+        $sSQL .= ' get_name_by_language(name,'.$mLangPref.') as localname';
         $sSQL .= ' FROM get_addressdata('.$iPlaceID.','.$sHousenumber.')';
-        $sSQL .= ' ORDER BY rank_address desc,isaddress DESC';
+        $sSQL .= ' ORDER BY rank_address DESC, isaddress DESC';
 
         $this->aAddressLines = chksql($oDB->getAll($sSQL));
     }
@@ -40,7 +40,7 @@ class AddressDetails
             return $this->aAddressLines;
         }
 
-        return array_filter($this->aAddressLines, 'AddressDetails::isAddress');
+        return array_filter($this->aAddressLines, array(__CLASS__, 'isAddress'));
     }
 
     public function getLocaleAddress()
diff --git a/test/php/Nominatim/AddressDetailsTest.php b/test/php/Nominatim/AddressDetailsTest.php
new file mode 100644 (file)
index 0000000..62faf1a
--- /dev/null
@@ -0,0 +1,112 @@
+<?php
+
+namespace Nominatim;
+
+require_once(CONST_BasePath.'/lib/AddressDetails.php');
+
+
+function chksql($oSql, $sMsg = 'Database request failed')
+{
+    return $oSql;
+}
+
+class AddressDetailsTest extends \PHPUnit\Framework\TestCase
+{
+
+    protected function setUp()
+    {
+        // How the fixture got created
+        //
+        // 1) search for '10 downing street'
+        // https://nominatim.openstreetmap.org/details.php?osmtype=R&osmid=1879842
+        //
+        // 2) find place_id in the local database
+        // SELECT place_id, name FROM placex WHERE osm_type='R' AND osm_id=1879842;
+        //
+        // 3) set postgresql to non-align output, e.g. psql -A or \a in the CLI
+        //
+        // 4) query
+        // SELECT row_to_json(row,true) FROM (
+        //   SELECT *, get_name_by_language(name, ARRAY['name:en']) as localname
+        //   FROM get_addressdata(194663412,10)
+        //   ORDER BY rank_address DESC, isaddress DESC
+        // ) AS row;
+        //
+        // 5) copy&paste into file. Add commas between records
+        //
+        $json = file_get_contents(CONST_BasePath.'/test/php/fixtures/address_details_10_downing_street.json');
+        $data = json_decode($json, true);
+
+        $this->oDbStub = $this->getMockBuilder(\DB::class)
+                              ->setMethods(array('getAll'))
+                              ->getMock();
+        $this->oDbStub->method('getAll')
+                      ->willReturn($data);
+    }
+
+    public function testGetLocaleAddress()
+    {
+        $oAD = new AddressDetails($this->oDbStub, 194663412, 10, 'en');
+        $expected = join(', ', array(
+            '10 Downing Street',
+            '10',
+            'Downing Street',
+            'St. James\'s',
+            'Covent Garden',
+            'Westminster',
+            'London',
+            'Greater London',
+            'England',
+            'SW1A 2AA',
+            'United Kingdom'
+        ));
+        $this->assertEquals($expected, $oAD->getLocaleAddress());
+    }
+
+    public function testGetAddressDetails()
+    {
+        $oAD = new AddressDetails($this->oDbStub, 194663412, 10, 'en');
+        $this->assertEquals(18, count($oAD->getAddressDetails(true)));
+        $this->assertEquals(12, count($oAD->getAddressDetails(false)));
+    }
+
+    public function testGetAddressNames()
+    {
+        $oAD = new AddressDetails($this->oDbStub, 194663412, 10, 'en');
+        $expected = array(
+                     'attraction' => '10 Downing Street',
+                     'house_number' => '10',
+                     'road' => 'Downing Street',
+                     'neighbourhood' => 'St. James\'s',
+                     'suburb' => 'Covent Garden',
+                     'city' => 'London',
+                     'state_district' => 'Greater London',
+                     'state' => 'England',
+                     'postcode' => 'SW1A 2AA',
+                     'country' => 'United Kingdom',
+                     'country_code' => 'gb'
+        );
+
+        $this->assertEquals($expected, $oAD->getAddressNames());
+    }
+
+    public function testGetAdminLevels()
+    {
+        $oAD = new AddressDetails($this->oDbStub, 194663412, 10, 'en');
+        $expected = array(
+                     'level8' => 'Westminster',
+                     'level6' => 'London',
+                     'level5' => 'Greater London',
+                     'level4' => 'England',
+                     'level2' => 'United Kingdom'
+        );
+        $this->assertEquals($expected, $oAD->getAdminLevels());
+    }
+
+    public function testDebugInfo()
+    {
+        $oAD = new AddressDetails($this->oDbStub, 194663412, 10, 'en');
+        $this->assertTrue(is_array($oAD->debugInfo()));
+        $this->assertEquals(18, count($oAD->debugInfo()));
+    }
+}
diff --git a/test/php/fixtures/address_details_10_downing_street.json b/test/php/fixtures/address_details_10_downing_street.json
new file mode 100644 (file)
index 0000000..853a6c0
--- /dev/null
@@ -0,0 +1,217 @@
+[{"place_id":194663412,
+ "osm_type":null,
+ "osm_id":null,
+ "name":{"name": "10 Downing Street", "name:en": "10 Downing Street", "name:es": "10 de Downing Street", "name:he": "דאונינג 10", "name:ko": "다우닝 가 10번지", "name:zh": "唐寧街10號"},
+ "class":"tourism",
+ "type":"attraction",
+ "admin_level":null,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":29,
+ "distance":0,
+ "localname":"10 Downing Street"},
+{"place_id":194663412,
+ "osm_type":null,
+ "osm_id":null,
+ "name":{"ref": "10"},
+ "class":"place",
+ "type":"house_number",
+ "admin_level":null,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":28,
+ "distance":0,
+ "localname":"10"},
+{"place_id":68310941,
+ "osm_type":"W",
+ "osm_id":4244999,
+ "name":{"name": "Downing Street"},
+ "class":"highway",
+ "type":"residential",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":26,
+ "distance":0,
+ "localname":"Downing Street"},
+{"place_id":16037318,
+ "osm_type":"N",
+ "osm_id":1653239257,
+ "name":{"name": "St. James's"},
+ "class":"place",
+ "type":"neighbourhood",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":22,
+ "distance":0.00982435489434447,
+ "localname":"St. James's"},
+{"place_id":51691981,
+ "osm_type":"N",
+ "osm_id":3937587633,
+ "name":{"name": "St Clement Danes"},
+ "class":"place",
+ "type":"neighbourhood",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":22,
+ "distance":0.0128768181947227,
+ "localname":"St Clement Danes"},
+{"place_id":22208313,
+ "osm_type":"N",
+ "osm_id":2290086954,
+ "name":{"name": "Covent Garden"},
+ "class":"place",
+ "type":"suburb",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":20,
+ "distance":0.00935748249317067,
+ "localname":"Covent Garden"},
+{"place_id":21742712,
+ "osm_type":"N",
+ "osm_id":2288030397,
+ "name":{"name": "Millbank"},
+ "class":"place",
+ "type":"suburb",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":20,
+ "distance":0.0106525181285902,
+ "localname":"Millbank"},
+{"place_id":122775,
+ "osm_type":"N",
+ "osm_id":26745371,
+ "name":{"name": "St Giles"},
+ "class":"place",
+ "type":"suburb",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":20,
+ "distance":0.0136188357358441,
+ "localname":"St Giles"},
+{"place_id":134882,
+ "osm_type":"N",
+ "osm_id":27553719,
+ "name":{"name": "Lambeth"},
+ "class":"place",
+ "type":"suburb",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":20,
+ "distance":0.0093308163978298,
+ "localname":"Lambeth"},
+{"place_id":194276676,
+ "osm_type":"R",
+ "osm_id":51781,
+ "name":{"name": "City of Westminster", "name:be": "Вэстмінстэр", "name:cy": "San Steffan", "name:en": "Westminster", "name:he": "וסטמינסטר", "name:ru": "Вестминстер"},
+ "class":"place",
+ "type":"city",
+ "admin_level":8,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":16,
+ "distance":0.0340909562148044,
+ "localname":"Westminster"},
+{"place_id":195398522,
+ "osm_type":"N",
+ "osm_id":107775,
+ "name":{"name": "London", "name:ab": "Лондан", "name:af": "Londen", "name:am": "ለንደን", "name:an": "Londres", "name:ar": "لندن", "name:ba": "Лондон", "name:be": "Лондан", "name:bg": "Лондон", "name:bn": "লন্ডন", "name:bo": "ལོན་ཊོན།", "name:br": "Londrez", "name:ca": "Londres", "name:co": "Londra", "name:cs": "Londýn", "name:cu": "Лондонъ", "name:cv": "Лондон", "name:cy": "Llundain", "name:de": "London", "name:el": "Λονδίνο", "name:en": "London", "name:eo": "Londono", "name:es": "Londres", "name:eu": "Londres", "name:fa": "لندن", "name:fi": "Lontoo", "name:fr": "Londres", "name:fy": "Londen", "name:ga": "Londain", "name:gd": "Lunnainn", "name:gl": "Londres - London", "name:gn": "Londye", "name:gu": "લંડન", "name:gv": "Lunnin", "name:he": "לונדון", "name:hi": "लंदन", "name:ht": "Lonn", "name:hu": "London", "name:hy": "Լոնդոն", "name:is": "Lundúnir", "name:it": "Londra", "name:ja": "ロンドン", "name:ka": "ლონდონი", "name:kk": "Лондон", "name:kn": "ಲಂಡನ್", "name:ko": "런던", "name:ku": "London", "name:kv": "Лондон", "name:kw": "Loundres", "name:ky": "Лондон", "name:la": "Londinium", "name:li": "Londe", "name:ln": "Londoni", "name:lo": "ລອນດອນ", "name:lt": "Londonas", "name:lv": "Londona", "name:mi": "Rānana", "name:mk": "Лондон", "name:ml": "ലണ്ടൻ", "name:mn": "Лондон", "name:mr": "लंडन", "name:mt": "Londra", "name:my": "လန်ဒန်မြို့", "name:ne": "लण्डन", "name:nl": "Londen", "name:no": "London", "name:oc": "Londres", "name:or": "ଲଣ୍ଡନ", "name:os": "Лондон", "name:pl": "Londyn", "name:ps": "لندن", "name:pt": "Londres", "name:rm": "Londra", "name:ro": "Londra", "name:ru": "Лондон", "name:sa": "लन्डन्", "name:sc": "Londra", "name:si": "ලන්ඩන්", "name:sk": "Londýn", "name:sq": "Londra", "name:sr": "Лондон", "name:sv": "London", "name:ta": "இலண்டன்", "name:te": "లండన్", "name:tg": "Лондон", "name:th": "ลอนดอน", "name:tl": "Londres", "name:tr": "Londra", "name:tt": "Лондон", "name:uk": "Лондон", "name:ur": "لندن", "name:vi": "Luân Đôn", "name:wo": "Londar", "name:yi": "לאנדאן", "name:yo": "Lọndọnu", "name:zh": "倫敦", "name:zu": "ILondon", "name:ang": "Lunden", "name:arc": "ܠܘܢܕܘܢ", "name:arz": "لندن", "name:ast": "Londres", "name:bcl": "Londres", "name:cdo": "Lùng-dŭng", "name:ckb": "لەندەن", "name:diq": "Londra", "name:eml": "Lòndra", "name:ext": "Londri", "name:frp": "Londres", "name:gan": "倫敦", "name:haw": "Lākana", "name:ilo": "Londres", "name:jbo": "london", "name:koi": "Лондон", "name:krc": "Лондон", "name:lad": "Londra", "name:lbe": "Лондон", "name:lez": "Лондон", "name:lij": "Londra", "name:lmo": "Lundra", "name:mhr": "Лондон", "name:mrj": "Лондон", "name:mwl": "Londres", "name:mzn": "لندن", "name:nah": "Londres", "name:nap": "Londra", "name:new": "लण्डन", "name:nrm": "Londres", "name:pcd": "Londe", "name:pms": "Londra", "name:pnb": "لندن", "name:pnt": "Λονδίνο", "name:rue": "Лондон", "name:sah": "Лондон", "name:scn": "Londra", "name:sco": "Lunnon", "name:szl": "Lůndůn", "name:tet": "Londres", "name:tpi": "Landen", "name:tzl": "Londra", "name:udm": "Лондон", "name:vec": "Łondra", "name:vls": "Londn", "name:wuu": "伦敦", "name:xmf": "ლონდონი", "name:yue": "倫敦", "name:zea": "Londen", "name:nds-nl": "Londen", "name:bat-smg": "Londons", "name:roa-rup": "Londra", "name:roa-tara": "Londre", "name:be-tarask": "Лёндан", "name:zh_pinyin": "Lúndūn", "name:zh-classical": "倫敦", "name:zh-simplified": "伦敦", "name:zh-traditional": "倫敦"},
+ "class":"place",
+ "type":"city",
+ "admin_level":2,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":16,
+ "distance":0.00412384196971048,
+ "localname":"London"},
+{"place_id":193774423,
+ "osm_type":"R",
+ "osm_id":65606,
+ "name":{"name": "London", "name:be": "Лондан", "name:ca": "Londres", "name:el": "Λονδίνο", "name:en": "London", "name:eo": "Londono", "name:es": "Londres", "name:fa": "لندن", "name:fi": "Lontoo", "name:fr": "Londres", "name:fy": "Londen", "name:gl": "Londres", "name:hi": "लंदन", "name:lt": "Londonas", "name:nl": "Londen", "name:pl": "Londyn", "name:pt": "Londres", "name:ru": "Лондон", "name:uk": "Лондон", "name:vi": "Luân Đôn", "name:zh": "伦敦", "int_name": "London", "name:szl": "Lůndůn", "name:tzl": "Londra", "name:be-tarask": "Лёндан"},
+ "class":"place",
+ "type":"city",
+ "admin_level":6,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":12,
+ "distance":0.0172243361058611,
+ "localname":"London"},
+{"place_id":194000080,
+ "osm_type":"R",
+ "osm_id":175342,
+ "name":{"name": "Greater London", "name:be": "Вялікі Лондан", "name:de": "Groß-London", "name:en": "Greater London", "name:fr": "Grand Londres", "name:lt": "Didysis Londonas", "name:ru": "Большой Лондон", "name:uk": "Великий Лондон", "official_name": "Greater London (incl. City of London)", "name:be-tarask": "Вялікі Лёндан"},
+ "class":"boundary",
+ "type":"administrative",
+ "admin_level":5,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":10,
+ "distance":0.0172532381571105,
+ "localname":"Greater London"},
+{"place_id":194325361,
+ "osm_type":"R",
+ "osm_id":58447,
+ "name":{"name": "England", "name:be": "Англія", "name:br": "Bro-Saoz", "name:ca": "Anglaterra", "name:cs": "Anglie", "name:cy": "Lloegr", "name:de": "England", "name:el": "Αγγλία", "name:en": "England", "name:eo": "Anglujo", "name:es": "Inglaterra", "name:fi": "Englanti", "name:fr": "Angleterre", "name:fy": "Ingelân", "name:ga": "Sasana", "name:gd": "Sasainn", "name:gv": "Sostyn", "name:he": "אנגליה", "name:hu": "Anglia", "name:ia": "Anglaterra", "name:io": "Anglia", "name:it": "Inghilterra", "name:la": "Anglia", "name:lt": "Anglija", "name:nl": "Engeland", "name:pl": "Anglia", "name:pt": "Inglaterra", "name:ru": "Англия", "name:sk": "Anglicko", "name:sv": "England", "name:tr": "İngiltere", "name:uk": "Англія", "name:vi": "Anh", "name:vo": "Linglän", "name:zh": "英格蘭", "name:hsb": "Jendźelska", "name:nds": "England", "name:tok": "ma Inli", "name:tzl": "Anglatzara", "alt_name:eo": "Anglio", "alt_name:ia": "Anglia", "old_name:vi": "Anh Quốc", "alt_name:nds": "Ingland", "name:be-tarask": "Ангельшчына", "name:zh-classical": "英格蘭", "name:zh-simplified": "英格兰", "name:zh-traditional": "英格蘭"},
+ "class":"boundary",
+ "type":"administrative",
+ "admin_level":4,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":8,
+ "distance":1.75192967136328,
+ "localname":"England"},
+{"place_id":null,
+ "osm_type":null,
+ "osm_id":null,
+ "name":{"ref": "SW1A 2AA"},
+ "class":"place",
+ "type":"postcode",
+ "admin_level":null,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":5,
+ "distance":0,
+ "localname":"SW1A 2AA"},
+{"place_id":40715006,
+ "osm_type":"N",
+ "osm_id":3055075992,
+ "name":{"ref": "SW1A 2AQ"},
+ "class":"place",
+ "type":"postcode",
+ "admin_level":15,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":5,
+ "distance":0.00172905579146705,
+ "localname":"SW1A 2AQ"},
+{"place_id":194354400,
+ "osm_type":"R",
+ "osm_id":62149,
+ "name":{"name": "United Kingdom", "name:ab": "Британиа Ду", "name:af": "Verenigde Koninkryk", "name:ak": "United Kingdom", "name:am": "ዩናይትድ ኪንግደም", "name:an": "Reino Unito", "name:ar": "المملكة المتحدة", "name:az": "Böyük Britaniya", "name:ba": "Бөйөк Британия", "name:be": "Вялікабрытанія", "name:bg": "Обединено кралство Великобритания и Северна Ирландия", "name:bi": "Unaeted Kingdom", "name:bm": "Angilɛtɛri", "name:bn": "যুক্তরাজ্য", "name:bo": "དབྱིན་ཇི་མཉམ་འབྲེལ།", "name:br": "Rouantelezh-Unanet", "name:bs": "Ujedinjeno Kraljevstvo Velike Britanije i Sjeverne Irske", "name:ca": "Regne Unit", "name:ce": "Йоккха Британи", "name:co": "Regnu Unitu", "name:cs": "Spojené království", "name:cu": "Вєлика Британїꙗ", "name:cv": "Аслă Британи", "name:cy": "Deyrnas Unedig", "name:da": "Storbritannien", "name:de": "Vereinigtes Königreich", "name:dv": "ޔުނައިޓެޑް ކިންގްޑަމް", "name:dz": "ཡུ་ནའི་ཊེཊ་ཀིང་ཌམ", "name:ee": "United Kingdom", "name:el": "Ηνωμένο Βασίλειο", "name:en": "United Kingdom", "name:eo": "Britujo", "name:es": "Reino Unido", "name:et": "Suurbritannia", "name:eu": "Erresuma Batua", "name:fa": "بریتانیا", "name:ff": "Laamateeri Rentundi", "name:fi": "Yhdistynyt kuningaskunta", "name:fo": "Stóra Bretland", "name:fr": "Royaume-Uni", "name:fy": "Feriene Keninkryk", "name:ga": "An Ríocht Aontaithe", "name:gd": "An Rìoghachd Aonaichte", "name:gl": "Reino Unido", "name:gn": "Tavetã Joaju", "name:gu": "યુનાઇટેડ કિંગડમ", "name:gv": "Reeriaght Unnaneysit", "name:ha": "Birtaniya", "name:he": "הממלכה המאוחדת", "name:hi": "यूनाइटेड किंगडम", "name:hr": "Ujedinjeno Kraljevstvo", "name:ht": "Wayòm Ini", "name:hu": "Egyesült Királyság", "name:hy": "Միացյալ Թագավորություն", "name:ia": "Regno Unite", "name:id": "Britania Raya", "name:ie": "Reyatu Unit", "name:ig": "Obodoézè Nà Ofú", "name:ii": "ꑱꇩ", "name:io": "Unionita Rejio", "name:is": "Bretland", "name:it": "Regno Unito", "name:ja": "イギリス", "name:jv": "Britania Raya", "name:ka": "გაერთიანებული სამეფო", "name:kg": "Royaume-Uni", "name:ki": "Ngeretha", "name:kk": "Ұлыбритания", "name:kl": "Tuluit Nunaat", "name:km": "រាជាណាចក្ររួម", "name:kn": "ಯುನೈಟೆಡ್ ಕಿಂಗ್ಡಂ", "name:ko": "영국", "name:ks": "یُنایٹِڑ کِنٛگڈَم", "name:ku": "Keyaniya Yekbûyî", "name:kv": "Ыджыд Британия", "name:kw": "Ruwvaneth Unys", "name:ky": "Улуу Британия жана Түндүк Ирландия", "name:la": "Britanniarum Regnum", "name:lb": "Groussbritannien an Nordirland", "name:lg": "Bungereza", "name:li": "Vereineg Keuninkriek", "name:ln": "Ingɛlɛ́tɛlɛ", "name:lo": "ສະຫະລາດຊະອານາຈັກ", "name:lt": "Jungtinė Karalystė", "name:lv": "Apvienotā Karaliste", "name:mg": "Fanjakana Mitambatra", "name:mi": "Kīngitanga Kotahi", "name:mk": "Обединето Кралство", "name:ml": "യുണൈറ്റഡ് കിങ്ഡം", "name:mn": "Их Британи", "name:mr": "युनायटेड किंग्डम", "name:ms": "United Kingdom", "name:mt": "Renju Unit", "name:my": "ယူနိုက်တက်ကင်းဒမ်းနိုင်ငံ", "name:na": "Ingerand", "name:ne": "संयुक्त अधिराज्य", "name:nl": "Verenigd Koninkrijk", "name:nn": "Storbritannia", "name:no": "Storbritannia", "name:nv": "Tótaʼ Dinéʼiʼ Bikéyah", "name:oc": "Reialme Unit", "name:or": "ଯୁକ୍ତରାଜ୍ୟ", "name:os": "Стыр Британи", "name:pa": "ਸੰਯੁਕਤ ਬਾਦਸ਼ਾਹੀ", "name:pl": "Wielka Brytania", "name:ps": "بريتانيا", "name:pt": "Reino Unido", "name:qu": "Hukllachasqa Qhapaq Suyu", "name:rm": "Reginavel Unì", "name:rn": "Ubwongereza", "name:ro": "Regatul Unit al Marii Britanii și al Irlandei de Nord", "name:ru": "Великобритания", "name:rw": "Ubwongereza", "name:sa": "संयुक्त अधिराज्य", "name:sc": "Rennu Auniadu", "name:se": "Ovttastuvvan gonagasriika", "name:sg": "Ködörögbïä--Ôko", "name:sh": "Ujedinjeno Kraljevstvo", "name:si": "එක්සත් රාජධානිය", "name:sk": "Spojené kráľovstvo", "name:sl": "Združeno kraljestvo Velike Britanije in Severne Irske", "name:sn": "United Kingdom", "name:so": "Midowga boqortooyada Britan", "name:sq": "Mbretëria e Bashkuar e Britanisë dhe Irlandës së Veriut", "name:sr": "Уједињено Краљевство", "name:ss": "United Kingdom", "name:su": "Britania", "name:sv": "Storbritannien", "name:sw": "Ufalme wa Muungano", "name:ta": "ஐக்கிய இராச்சியம்", "name:te": "యునైటెడ్ కింగ్డమ్", "name:tg": "Подшоҳии Муттаҳида", "name:th": "สหราชอาณาจักร", "name:ti": "እንግሊዝ", "name:tl": "Nagkakaisang Kaharian", "name:to": "Pilitānia", "name:tr": "Birleşik Krallık", "name:tt": "Бөекбритания", "name:tw": "United Kingdom", "name:ty": "Paratāne", "name:ug": "بۈيۈك بېرىتانىيە", "name:uk": "Велика Британія", "name:ur": "برطانیہ", "name:uz": "Birlashgan Qirollik", "name:vi": "Vương quốc Anh", "name:vo": "Regän Pebalöl", "name:wo": "Nguur-Yu-Bennoo", "name:yi": "פאראייניגטע קעניגרייך", "name:yo": "Ilẹ̀ọba Aṣọ̀kan", "name:za": "Yinghgoz", "name:zh": "英國", "name:zu": "Umbuso Ohlangeneyo", "alt_name": "United Kingdom; UK; Britain; Great Britain", "int_name": "United Kingdom", "name:als": "Vereinigtes Königreich", "name:ang": "Geāned Cynerīce", "name:arc": "ܡܠܟܘܬܐ ܡܚܝܕܬܐ", "name:arz": "المملكه المتحده", "name:ast": "Reinu Xuníu", "name:bar": "Vaeinigts Kinireich", "name:bcl": "Reyno Unido", "name:bjn": "Britania Raya", "name:bpy": "তিলপারাজ্য", "name:bug": "United Kingdom", "name:bxr": "Нэгдсэн Вант Улс", "name:cdo": "Ĭng-guók", "name:ceb": "Hiniusang Gingharian", "name:chr": "ᎡᎵᏏᎯ", "name:chy": "United Kingdom", "name:ckb": "شانشینی یەکگرتوو", "name:crh": "Büyük Britaniya", "name:csb": "Wiôlgô Britanijô", "name:diq": "Qraliya Yewbiyayiye", "name:dsb": "Wjelika Britaniska", "name:eml": "Régn Unî", "name:ext": "Réinu Uniu", "name:frp": "Royômo-Uni", "name:frr": "Feriind Kiningrik", "name:fur": "Ream Unît", "name:gag": "Büük Britaniya", "name:gan": "英國", "name:hak": "Yîn-koet", "name:haw": "Aupuni Mōʻī Hui Pū ʻia", "name:hif": "United Kingdom", "name:hsb": "Zjednoćene kralestwo", "name:ilo": "Nagkaykaysa a Pagarian", "name:jbo": "ritygu'e", "name:kab": "Legliz", "name:kbd": "Британиэшхуэ", "name:koi": "Ыджыт Бритму", "name:krc": "Уллу Британия", "name:ksh": "Jrußbritannie", "name:lad": "Reyno Unido", "name:lez": "ЧIехибритания", "name:lfn": "Rena Unida", "name:lij": "Regno Unïo", "name:lmo": "Regn Ünì", "name:ltg": "Lelbrytaneja", "name:mhr": "Ушымо Королевстве", "name:mrj": "Кого Британи", "name:mwl": "Reino Ounido", "name:mzn": "بریتانیا", "name:nah": "Tlacetilīlli Huēyitlahtohcāyōtl", "name:nap": "Gran Vretagna", "name:nds": "Vereenigt Königriek vun Grootbritannien un Noordirland", "name:nov": "Unionati Regia", "name:nrm": "Rouoyaume Unni", "name:pag": "Reino Unido", "name:pam": "Pisanmetung a Ka-arian", "name:pap": "Reino Uni", "name:pcd": "Roéyôme-Uni", "name:pih": "Yunitid Kingdum", "name:pms": "Regn Unì", "name:pnb": "برطانیہ", "name:pnt": "Ηνωμένο Βασίλειο", "name:rmy": "Phandlo Thagaripen la Bare Britaniyako thai le Nordutne Irlandesko", "name:rue": "Велика Брітанія", "name:sah": "Холбоhуктаах Хоруоллук", "name:scn": "Regnu Unitu", "name:sco": "Unitit Kinrick", "name:srn": "Ingriskondre", "name:stq": "Fereeniged Köönichriek fon Groot-Britannien un Noudirlound", "name:szl": "Wjelgo Brytańijo", "name:tet": "Reinu Naklibur", "name:tok": "ma Juke", "name:tpi": "Yunaitet Kingdom", "name:tzl": "Regipäts Viensiçat", "name:udm": "Великобритания", "name:vec": "Regno Unìo", "name:vep": "Sur' Britanii", "name:vls": "Verênigd Keunienkryk", "name:war": "Reino Unido", "name:wuu": "英国", "name:xal": "Ик Бритишин болн Ар Гәәлгүдин Ниицәтә Нутг", "name:xmf": "გოართოიანაფილი ომაფე", "name:yue": "英國", "name:zea": "Vereênigd Konienkriek", "name:zh_py": "Yingguo", "short_name": "UK", "alt_name:eo": "Britio", "alt_name:sr": "УК;У.К.", "alt_name:vi": "Vương quốc Liên hiệp Anh", "name:nds-nl": "Verienigd Keuninkriek", "name:zh_pyt": "Yīngguó", "name:bat-smg": "Jongtėnė Karalīstė", "name:cbk-zam": "Reinos Unidos de Gran Britania y Norte Irelandia", "name:fiu-vro": "Ütiskuningriik", "name:roa-rup": "Britania Mari", "name:roa-tara": "Regne Aunìte", "official_name": "United Kingdom of Great Britain and Northern Ireland", "short_name:el": "ΗΒ", "short_name:vo": "Britän", "name:be-tarask": "Вялікабрытанія", "name:zh-min-nan": "Liân-ha̍p Ông-kok", "official_name:be": "Злучанае Каралеўства Вялікабрытаніі і Паўночнай Ірландыі", "official_name:br": "Rouantelezh Unanet Breizh-Veur ha Norzhiwerzhon", "official_name:ca": "Regne Unit de Gran Bretanya i Irlanda del Nord", "official_name:cs": "Spojené království Velké Británie a Severního Irska", "official_name:de": "Vereinigtes Königreich Großbritannien und Nordirland", "official_name:el": "Ηνωμένο Βασίλειο της Μεγάλης Βρετανίας και της Βόρειας Ιρλανδίας", "official_name:en": "United Kingdom of Great Britain and Northern Ireland", "official_name:eo": "Unuiĝinta Reĝlando de Granda Britujo kaj Nord-Irlando", "official_name:es": "Reino Unido de Gran Bretaña", "official_name:et": "Suurbritannia ja Põhja-Iiri Ühendkuningriik", "official_name:fr": "Royaume-Uni de Grande-Bretagne et d'Irlande du Nord", "official_name:hr": "Ujedinjeno Kraljevstvo Velike Britanije i Sjeverne Irske", "official_name:id": "Perserikatan Kerajaan Britania Raya dan Irlandia Utara", "official_name:it": "Regno Unito di Gran Bretagna e Irlanda del Nord", "official_name:ja": "グレートブリテン及び北アイルランド連合王国", "official_name:ku": "Keyaniya Yekbûyî ya Brîtaniya Mezin û Bakurê Îrlandê", "official_name:lb": "Vereenegt Kinnekräich vu Groussbritannien an Nordirland", "official_name:no": "Det forente kongeriket Storbritannia og Nord-Irland", "official_name:pl": "Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej", "official_name:pt": "Reino Unido da Grã-Bretanha e Irlanda do Norte", "official_name:ru": "Соединённое королевство Великобритании и Северной Ирландии", "official_name:sk": "Spojené kráľovstvo Veľkej Británie a Severného Írska", "official_name:sl": "Združeno kraljestvo Velike Britanije in Severne Irske", "official_name:sr": "Уједињено Краљевство Велике Британије и Северне Ирске", "official_name:sv": "Förenade konungariket Storbritannien och Nordirland", "official_name:vi": "Vương quốc Liên hiệp Anh và Bắc Ireland", "name:abbreviation": "UK", "name:zh-classical": "英國", "official_name:scn": "Regnu Unitu di Gran Britagna e Irlanna dû Nord", "name:zh-simplified": "英国", "name:zh-traditional": "英國"},
+ "class":"place",
+ "type":"country",
+ "admin_level":2,
+ "fromarea":true,
+ "isaddress":true,
+ "rank_address":4,
+ "distance":4.56060933645498,
+ "localname":"United Kingdom"},
+{"place_id":null,
+ "osm_type":null,
+ "osm_id":null,
+ "name":{"ref": "gb"},
+ "class":"place",
+ "type":"country_code",
+ "admin_level":null,
+ "fromarea":true,
+ "isaddress":false,
+ "rank_address":4,
+ "distance":0,
+ "localname":"gb"}
+]
\ No newline at end of file