[NUUG kart] NGA import.

Michael Eric Menk mikemenk at yahoo.no
Mon Jun 30 00:34:13 CEST 2008


Jeg har en ca 50000 norske stedsnavn,  jeg begynte på dette i fjor, men 
hovedkortet røk på maskinen databasen lå på..

Et STORT flertall av disse navnene er ikke lagt inn i OSM.

NAVN
Denne samlingen av navn er ikke helt perfekt, noen av elementene har 
flere offisielle navn. Noen av disse har spåkode på navnene, disse er 
skrevet med name:no og name:sme.

Steder med flere navn (samme plass er et sted med samme klasse (dsg) og 
samme lat og lon), uten at det er språkkode, endel av disse er  
flerspråklige steder, andre er plasser som okkupere samme område. F.eks 
en liten gård i en liten dal, en bygd som dekker et helt nes, osv. Dette 
kan du se dersom enn kan norsk, at det ene navnet er gården, og det 
andre er dalen.

I Finnmark er det mange steder med ikke Norske navn, disse har ikke 
språkkode, de fleste er nok Samisk, men noen er nok også Kvensk.

Disse stedene,er skrevet med note:nga:full_names= komma, 
separert,liste,av,navnene...

KLASSIFISERING
Annet problem med dataene, at grend,bygd,tettsted,by,bydel og nabolag (i 
storby) er alle definert som populated place

Jeg har derfor valgt (foreløpig) å sette  place=locality på alle PPL* og 
gårdsnavn. Det er lettere for folk å redigere på dataene i JOSM 
(sletting og redigering av tagger), enn å gjøre det pre-upload.

Dataene inneholder flere klasse-inndelinger enn osm tillater, så mange 
av dataene blir ikke lagt til med unntak av navn.

KOMMUNE
Det er en lang liste med kommune. (alle, eller så og si alle), er det 
noen som har et godt forslag for osm tag for kommune.
Dersom det ikke er noe som passer, foreslår jeg place:no=kommune i vente 
på noe bedre... (Så kan vi ta søk erstatt senene)

Original klasse, samt data for innhenting er lastet inn som note:nga:dsg 
og nga:modify_date , og militærkordinatene er i source tagen, slik at 
orginalen kon oppspores enkelt.

For å se på kilden, kan du gå på
http://mmenk.homeip.net:18080/osm/poi/

web-siden er ufullstendig, den var beregnet på å rette dataene online, 
men har funnet ut at det er enklere å rette dem i josm etterpå.


OPPSUMERING:
Jeg holder fremdeles på å konvertere dataene, ettersom jeg har 
duplikat-søk, så går det senere og senere for hvert element som blir 
lagt til. Dersom det er noen som har noen forslag, så bare kom med de, 
men jeg syntes å bruke for langt tid på ikke-opplastede data blir for 
galt. (utnytter den sprette geografiske kompetansen av gruppen).
--
Mike

"Vedlegg":

1. Eksempel på multispråk fjell.
2. konverterings if-løkken.

-------8<------------8<----------
<node id='-43712' visible='true' lat='70.698056' lon='23.846389'>
<tag k='natural' v='peak' />
<tag k='note' v='FIXME: Bulk import, chk: name, spelling, osm-tags and 
placement/existence/duplicate' />
<tag k='note:nga:dsg' v='MT (Mountain)' />
<tag k='note:nga:modify_date' v='1997-03-03' />
<tag k='ele' v='372' />
<tag k='source' v='NGA: mgrs=34WFD0497446183' />
<tag k='is_in' v='Finnmark fylke,Norway' />
<tag k='nat_name:no' v='Rugelfjell' />
<tag k='name:no' v='Rugelfjell' />
<tag k='nat_name' v='Rugelfjell' />
<tag k='name' v='Rugelfjell' />
<tag k='nat_name:sme' v='Falloaivi' />
<tag k='name:sme' v='Falloaivi' />
</node>
-------8<------------8<----------
//hvilke oms tagger som blir definert.
if ( $dsg == 'PPL' //Populated place
            || $dsg == 'PPLA' //Seat of a first-order administrative 
division (fylke hovedstad)
            || $dsg == 'PPLAC' //Capital of a political entity
            || $dsg == 'PPLAL' //Populated locality
            || $dsg == 'PPLAX' //Section of populated place
            ) {
            array_push($this->osmTags, array ('place','locality'));
        } else if (
            $dsg == 'FRM' //Farm
            || $dsg == 'FRMS' //Farms
            || $dsg == 'LCTY' //location
            ) {
            array_push($this->osmTags, array ('place','locality'));
        } else if (
            $dsg == 'PK' //Peak
            ||$dsg == 'PKS' //Peaks
            ||$dsg == 'MT' //Mountain
            || $dsg == 'HLLS' //Hills
            || $dsg == 'HLL' //Hill
            || $dsg == 'MTS' //Mountains
            ) {
            array_push($this->osmTags, array ('natural','peak'));
        } else if (
            $dsg == 'LK' //lake
            ||$dsg == 'LKS' //lakes
            ||$dsg == 'PND' //pond
            ||$dsg == 'PNDS' //ponds
            ) {
            array_push($this->osmTags, array ('natural','water'));
        } else if ($dsg == 'RSTN' /* Railway Station */ ) {
            array_push($this->osmTags, array ('railway','station'));
        } else if ($dsg == 'ISL' /*Island*/|| $dsg == 'ISLS' /*Islands*/) {
            array_push($this->osmTags, array ('place','island'));
        }else if (
            $dsg == 'FJD' //Fjord
            ||$dsg == 'BAY' //Bay
            || $dsg == 'COVE' //Cove
            || $dsg == 'FJDS' //Fjords
            ) {
            array_push($this->osmTags, array ('natural','bay'));
        }else if ($dsg == 'CH' /*Church*/) {
            array_push($this->osmTags, array 
('amenity','place_of_worship'));
            array_push($this->osmTags, array ('religion','christian'));
        }else if ($dsg == 'HTL' /*Hotel*/ ) {
            array_push($this->osmTags, array ('tourism','hotel'));
        }else if ($dsg == 'LTHSE' /*Lt. House*/ ) {
            array_push($this->osmTags, array ('man_made','lighthouse'));
        }else if ($dsg == 'PS' /*powerstation*/) {
            array_push($this->osmTags, array ('power','generator'));
        }
  -------8<------------8<----------



More information about the kart mailing list