[Talk-cz] převod dat z rúian do postgresql
Vlákno 14.7. - 15.7.2012, počet zpráv: 8
ahoj,
napsal jsem prográmek na převod dat z rúian do postgresql (potřeboval
jsem to částečně pro jednu svojí aplikaci, ale psal jsem to i s ohledem
na osm). bližší info k programu je tady:
https://github.com/fordfrog/ruian2pgsql/blob/next_release/README.cs.md
myslím, že by se ten prográmek mohl hodit (nejenom) k testování
použitelnosti rúian dat pro aktualizace map. momentálně to importuje
všechny informace ze základní datové sady. ještě to neumí importovat
hranice a definiční čáry ulic. gml mi nic neříká a neměl jsem čas se do
toho nějak víc ponořit, ale pokud by mě někdo chtěl stručně vysvětlit,
jak ta data nejlíp převést do db, tak budu rád, ušetřilo by mi to nějaký
čas. nebo to může někdo do toho prográmku dopsat, zdrojáky jsou na
https://github.com/fordfrog/ruian2pgsql/tree/next_release (je to v javě).
v souvislosti s tím jsem se chtěl zeptat, jestli se dá nějak jednoduše z
těch dat vygenerovat mapová vrstva (například s adresními body, ale až
to bude umět importovat i hranice a ulice, tak i s těmi), která by se
dala načíst třeba do josm. myslím, že pro vizuální kontrolu rúian dat vs
osm by to bylo fajn.
fordfrog
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120714/64e181f2/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120714/64e181f2/attachment.bin>
Ahoj,
kód jsem nezkoumal, takže jen pár rychlých poznámek...
Miroslav Šulc wrote:
zobrazit citaci
> myslím, že by se ten prográmek mohl hodit (nejenom) k testování
> použitelnosti rúian dat pro aktualizace map. momentálně to importuje
> všechny informace ze základní datové sady. ještě to neumí importovat
> hranice a definiční čáry ulic. gml mi nic neříká a neměl jsem čas se do
> toho nějak víc ponořit
Pokud máš v postgresql i postgis, tak by to mělo být velice jednoduché,
viz http://www.postgis.org/docs/ST_GeomFromGML.html
zobrazit citaci
> v souvislosti s tím jsem se chtěl zeptat, jestli se dá nějak jednoduše z
> těch dat vygenerovat mapová vrstva (například s adresními body, ale až
> to bude umět importovat i hranice a ulice, tak i s těmi), která by se
> dala načíst třeba do josm. myslím, že pro vizuální kontrolu rúian dat vs
> osm by to bylo fajn.
"Jednoduše" je v tomto případě relativní... o hotovém skriptu nevím, ale
v případě bodů by to mělo být poměrně triviální. Stačí načíst z databáze
latlon souřadnice bodu a připojené atributy převést na tagy, pak už jen
vypsat v osm formátu.
Trochu komplikovanější by to bylo v případě exportu cest.
Petr Morávek aka Xificurk
------------- další část ---------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120714/4ddcb9a1/attachment.sig>
ahoj,
díky za tip. vypadal slibně do té doby, než jsem zjistil, že mi postgis
nefunguje jak má. instaloval jsem ho poprvé, takže chyba může být i na
mé straně, ale netuším, kde jsem jakou mohl udělat.
st_geomfromgml mi vrací chybu "ERROR: invalid GML representation",
dokonce i když použiju příklad z té referenční stránky:
ruian-test=# SELECT ST_GeomFromGML('
<gml:LineString srsName="EPSG:4269">
<gml:coordinates>
-71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
</gml:coordinates>
</gml:LineString>');
ERROR: invalid GML representation
KONTEXT: SQL function "st_geomfromgml" statement 1
z té referenční stránky http://www.postgis.org/docs/ST_GeomFromGML.html
mi funguje jen ten " Examples - XLink usage", ostatní vrací tu samou chybu.
ještě jsem zkoušel tenhle příklad a ten mi taky funguje:
ruian-test=# SELECT ST_GeomFromGML(ST_AsGML(ST_GeomFromText('POINT
EMPTY',4326)));
st_geomfromgml
----------------
(1 row)
zkoušel jsem postgis 2.0.1 s postgresql 9.2_beta2 a postgis 2.0.0 s
postgresql 9.1.4, ale nefunguje ani jedno. do databáze jsem nainstaloval
vždy postgis.sql, postgis_comments.sql a spatial_ref_sys.sql.
netušíte někdo, v čem by mohl být problém?
ff
Dne 14.7.2012 21:26, "Petr Morávek [Xificurk]" napsal(a):
zobrazit citaci
> Ahoj,
> kód jsem nezkoumal, takže jen pár rychlých poznámek...
>
> Miroslav Šulc wrote:
>> myslím, že by se ten prográmek mohl hodit (nejenom) k testování
>> použitelnosti rúian dat pro aktualizace map. momentálně to importuje
>> všechny informace ze základní datové sady. ještě to neumí importovat
>> hranice a definiční čáry ulic. gml mi nic neříká a neměl jsem čas se do
>> toho nějak víc ponořit
> Pokud máš v postgresql i postgis, tak by to mělo být velice jednoduché,
> viz http://www.postgis.org/docs/ST_GeomFromGML.html
>
>> v souvislosti s tím jsem se chtěl zeptat, jestli se dá nějak jednoduše z
>> těch dat vygenerovat mapová vrstva (například s adresními body, ale až
>> to bude umět importovat i hranice a ulice, tak i s těmi), která by se
>> dala načíst třeba do josm. myslím, že pro vizuální kontrolu rúian dat vs
>> osm by to bylo fajn.
> "Jednoduše" je v tomto případě relativní... o hotovém skriptu nevím, ale
> v případě bodů by to mělo být poměrně triviální. Stačí načíst z databáze
> latlon souřadnice bodu a připojené atributy převést na tagy, pak už jen
> vypsat v osm formátu.
> Trochu komplikovanější by to bylo v případě exportu cest.
>
> Petr Morávek aka Xificurk
>
>
>
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz na openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/a2e1a5bb/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/a2e1a5bb/attachment.bin>
Miroslav Šulc wrote:
zobrazit citaci
> ahoj,
>
> díky za tip. vypadal slibně do té doby, než jsem zjistil, že mi postgis
> nefunguje jak má. instaloval jsem ho poprvé, takže chyba může být i na
> mé straně, ale netuším, kde jsem jakou mohl udělat.
>
> st_geomfromgml mi vrací chybu "ERROR: invalid GML representation",
> dokonce i když použiju příklad z té referenční stránky:
>
> ruian-test=# SELECT ST_GeomFromGML('
> <gml:LineString srsName="EPSG:4269">
> <gml:coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </gml:coordinates>
> </gml:LineString>');
> ERROR: invalid GML representation
> KONTEXT: SQL function "st_geomfromgml" statement 1
Tohle bude asi chyba v dokumentaci. Testnul jsem to u sebe a přišel na
to, že musíš uvést namespace, tj.
osm=> SELECT ST_GeomFromGML('
<gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4269">
<gml:coordinates>
-71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
</gml:coordinates>
</gml:LineString>');
nebo ho poctivě odstranit na všech elementech:
osm=> SELECT ST_GeomFromGML('
<LineString srsName="EPSG:4269">
<coordinates>
-71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
</coordinates>
</LineString>');
Petr Morávek aka Xificurk
------------- další část ---------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/92d5566f/attachment.sig>
tak odpověď jsem našel v logu postgresql ... problém byl v chybějící
definici gml namespace ... takže ty jejich dva příklady ani fungovat
nemůžou.
ff
Dne 15.7.2012 16:51, Miroslav Šulc napsal(a):
zobrazit citaci
> ahoj,
>
> díky za tip. vypadal slibně do té doby, než jsem zjistil, že mi
> postgis nefunguje jak má. instaloval jsem ho poprvé, takže chyba může
> být i na mé straně, ale netuším, kde jsem jakou mohl udělat.
>
> st_geomfromgml mi vrací chybu "ERROR: invalid GML representation",
> dokonce i když použiju příklad z té referenční stránky:
>
> ruian-test=# SELECT ST_GeomFromGML('
> <gml:LineString srsName="EPSG:4269">
> <gml:coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </gml:coordinates>
> </gml:LineString>');
> ERROR: invalid GML representation
> KONTEXT: SQL function "st_geomfromgml" statement 1
>
> z té referenční stránky
> http://www.postgis.org/docs/ST_GeomFromGML.html mi funguje jen ten "
> Examples - XLink usage", ostatní vrací tu samou chybu.
>
> ještě jsem zkoušel tenhle příklad a ten mi taky funguje:
>
> ruian-test=# SELECT ST_GeomFromGML(ST_AsGML(ST_GeomFromText('POINT
> EMPTY',4326)));
> st_geomfromgml
> ----------------
>
> (1 row)
>
> zkoušel jsem postgis 2.0.1 s postgresql 9.2_beta2 a postgis 2.0.0 s
> postgresql 9.1.4, ale nefunguje ani jedno. do databáze jsem
> nainstaloval vždy postgis.sql, postgis_comments.sql a spatial_ref_sys.sql.
>
> netušíte někdo, v čem by mohl být problém?
>
> ff
>
> Dne 14.7.2012 21:26, "Petr Morávek [Xificurk]" napsal(a):
>> Ahoj,
>> kód jsem nezkoumal, takže jen pár rychlých poznámek...
>>
>> Miroslav Šulc wrote:
>>> myslím, že by se ten prográmek mohl hodit (nejenom) k testování
>>> použitelnosti rúian dat pro aktualizace map. momentálně to importuje
>>> všechny informace ze základní datové sady. ještě to neumí importovat
>>> hranice a definiční čáry ulic. gml mi nic neříká a neměl jsem čas se do
>>> toho nějak víc ponořit
>> Pokud máš v postgresql i postgis, tak by to mělo být velice jednoduché,
>> viz http://www.postgis.org/docs/ST_GeomFromGML.html
>>
>>> v souvislosti s tím jsem se chtěl zeptat, jestli se dá nějak jednoduše z
>>> těch dat vygenerovat mapová vrstva (například s adresními body, ale až
>>> to bude umět importovat i hranice a ulice, tak i s těmi), která by se
>>> dala načíst třeba do josm. myslím, že pro vizuální kontrolu rúian dat vs
>>> osm by to bylo fajn.
>> "Jednoduše" je v tomto případě relativní... o hotovém skriptu nevím, ale
>> v případě bodů by to mělo být poměrně triviální. Stačí načíst z databáze
>> latlon souřadnice bodu a připojené atributy převést na tagy, pak už jen
>> vypsat v osm formátu.
>> Trochu komplikovanější by to bylo v případě exportu cest.
>>
>> Petr Morávek aka Xificurk
>>
>>
>>
>>
>> _______________________________________________
>> Talk-cz mailing list
>> Talk-cz na openstreetmap.org
>> http://lists.openstreetmap.org/listinfo/talk-cz
>
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/29d13e52/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/29d13e52/attachment.bin>
takže program už importuje i hranice a cesty (do postgis datového typu
geometry). diky xificurkovi za radu.
ff
Dne 14.7.2012 21:13, Miroslav Šulc napsal(a):
zobrazit citaci
> ahoj,
>
> napsal jsem prográmek na převod dat z rúian do postgresql (potřeboval
> jsem to částečně pro jednu svojí aplikaci, ale psal jsem to i s
> ohledem na osm). bližší info k programu je tady:
> https://github.com/fordfrog/ruian2pgsql/blob/next_release/README.cs.md
>
> myslím, že by se ten prográmek mohl hodit (nejenom) k testování
> použitelnosti rúian dat pro aktualizace map. momentálně to importuje
> všechny informace ze základní datové sady. ještě to neumí importovat
> hranice a definiční čáry ulic. gml mi nic neříká a neměl jsem čas se
> do toho nějak víc ponořit, ale pokud by mě někdo chtěl stručně
> vysvětlit, jak ta data nejlíp převést do db, tak budu rád, ušetřilo by
> mi to nějaký čas. nebo to může někdo do toho prográmku dopsat,
> zdrojáky jsou na
> https://github.com/fordfrog/ruian2pgsql/tree/next_release (je to v javě).
>
> v souvislosti s tím jsem se chtěl zeptat, jestli se dá nějak jednoduše
> z těch dat vygenerovat mapová vrstva (například s adresními body, ale
> až to bude umět importovat i hranice a ulice, tak i s těmi), která by
> se dala načíst třeba do josm. myslím, že pro vizuální kontrolu rúian
> dat vs osm by to bylo fajn.
>
> fordfrog
>
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz na openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/0374e176/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/0374e176/attachment.bin>
díky za odpověď, bohužel mi zprávy z mailing listu obvykle chodí s
několikahodinovým zpožděním, takže se mi občas stane, že mi přijde
odpověď na něco na co jsem se ptal, ale já to mezi tím nějak vyřeším.
předpokládám, že ostatním to asi chodí normálně, protože jinak by ty
odpovědi neměly čas odeslání třeba hodinu a půl před mojí následnou
zprávou, při které mi předchozí odpověď ještě nedorazila. pak to vypadá,
že ty odpovědi vůbec nečtu :-/
ff
Dne 15.7.2012 17:18, "Petr Morávek [Xificurk]" napsal(a):
zobrazit citaci
> Miroslav Šulc wrote:
>> ahoj,
>>
>> díky za tip. vypadal slibně do té doby, než jsem zjistil, že mi postgis
>> nefunguje jak má. instaloval jsem ho poprvé, takže chyba může být i na
>> mé straně, ale netuším, kde jsem jakou mohl udělat.
>>
>> st_geomfromgml mi vrací chybu "ERROR: invalid GML representation",
>> dokonce i když použiju příklad z té referenční stránky:
>>
>> ruian-test=# SELECT ST_GeomFromGML('
>> <gml:LineString srsName="EPSG:4269">
>> <gml:coordinates>
>> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
>> </gml:coordinates>
>> </gml:LineString>');
>> ERROR: invalid GML representation
>> KONTEXT: SQL function "st_geomfromgml" statement 1
> Tohle bude asi chyba v dokumentaci. Testnul jsem to u sebe a přišel na
> to, že musíš uvést namespace, tj.
>
> osm=> SELECT ST_GeomFromGML('
> <gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4269">
> <gml:coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </gml:coordinates>
> </gml:LineString>');
>
> nebo ho poctivě odstranit na všech elementech:
>
> osm=> SELECT ST_GeomFromGML('
> <LineString srsName="EPSG:4269">
> <coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </coordinates>
> </LineString>');
>
> Petr Morávek aka Xificurk
>
>
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz na openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/53a6e668/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/53a6e668/attachment.bin>
tak jsem se ještě díval do logu mailserveru a vypadá to, že mi zpráva
dorazila cca tři a půl hodiny potom, co jsi ji psal :-/
Jul 15 20:54:21 thia postfix/smtpd[23483]: connect from
shenron.openstreetmap.org[89.16.179.150]
Jul 15 20:54:22 thia postfix/smtpd[23483]: 03861F50:
client=shenron.openstreetmap.org[89.16.179.150]
Jul 15 20:54:22 thia postfix/cleanup[23489]: 03861F50:
message-id=<5002DF2F.8090300 na gmail.com>
Jul 15 20:54:22 thia postfix/qmgr[30228]: 03861F50:
from=<talk-cz-bounces na openstreetmap.org>, size=6157, nrcpt=1 (queue active)
Jul 15 20:54:22 thia postfix/virtual[23492]: 03861F50:
to=<fordfrog na fordfrog.com>, relay=virtual, delay=0.24,
delays=0.13/0/0/0.11, dsn=2.0.0, status=sent (delivered to maildir)
Jul 15 20:54:22 thia postfix/qmgr[30228]: 03861F50: removed
ff
Dne 15.7.2012 17:18, "Petr Morávek [Xificurk]" napsal(a):
zobrazit citaci
> Miroslav Šulc wrote:
>> ahoj,
>>
>> díky za tip. vypadal slibně do té doby, než jsem zjistil, že mi postgis
>> nefunguje jak má. instaloval jsem ho poprvé, takže chyba může být i na
>> mé straně, ale netuším, kde jsem jakou mohl udělat.
>>
>> st_geomfromgml mi vrací chybu "ERROR: invalid GML representation",
>> dokonce i když použiju příklad z té referenční stránky:
>>
>> ruian-test=# SELECT ST_GeomFromGML('
>> <gml:LineString srsName="EPSG:4269">
>> <gml:coordinates>
>> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
>> </gml:coordinates>
>> </gml:LineString>');
>> ERROR: invalid GML representation
>> KONTEXT: SQL function "st_geomfromgml" statement 1
> Tohle bude asi chyba v dokumentaci. Testnul jsem to u sebe a přišel na
> to, že musíš uvést namespace, tj.
>
> osm=> SELECT ST_GeomFromGML('
> <gml:LineString xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4269">
> <gml:coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </gml:coordinates>
> </gml:LineString>');
>
> nebo ho poctivě odstranit na všech elementech:
>
> osm=> SELECT ST_GeomFromGML('
> <LineString srsName="EPSG:4269">
> <coordinates>
> -71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
> </coordinates>
> </LineString>');
>
> Petr Morávek aka Xificurk
>
>
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz na openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/7410dbd8/attachment.html>
------------- další část ---------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4475 bytes
Desc: Elektronicky podpis S/MIME
URL: <https://lists.openstreetmap.org/pipermail/talk-cz/attachments/20120715/7410dbd8/attachment.bin>« zpět na výpis měsíce