Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden marcus.wolschon

Ich arbeite selber gerade an reverse Geocoding mit OSM.
Allerdings mit höheren Ansprüchen an die Qualität des
Ergebnisses als die Ad-Hoc SQL-Scripte hier.
Wird sich noch zeigen wie gut das Resultat dann am Ende
wird. Dauert alles noch.


 Das mit der geografischen zuordnung zu einem Place oder City wird
schon
 schwieriger - Eine eindeutige zuordnung geht nur ueber die boundary
 relations alles
 andere ist professionelles raten
 
 Mit ein bischen vorbereiten der boundary relations als geometrien in
einer
 datenbank geht das dann auch so:
 
 select  cb.id, cb.adminlevel, cb.name
 fromcompleteborders cb,
 (select ST_SetSRID(ST_Makepoint(8.1, 51.0), 4326) as pos) pos
 where   ST_Within(pos.pos, cb.border)
 order by adminlevel desc;
 
id   | adminlevel |name 
 ++-
  163253 |  8 | Hilchenbach
   62761 |  4 | Nordrhein-Westfalen
 (2 rows)
 
 Time: 38.139 ms

Nur das für die überaus meisten Ortschaften keine solche Relation
existiert
sonder maximal ein Polygon(way) und meist nur ein node.
Weiterhin: Wäre das Ergebniss der Auswertung der Relation nicht ein
Multipolygon statt einem Polygon?

 
 Das generieren der vordefinierten polygone aus den boundary relations
habe
 ich schonmal
 hier geschrieben:
 
 http://lists.openstreetmap.org/pipermail/talk-de/2009-October/056253.html

Dein Ansatz ignoriert vollkommen die Rollen-Tags.

Leider spezifiziert
http://wiki.openstreetmap.org/wiki/Tag:boundary%3Dadministrative
so überhaupt garnichts ordentlich. Vor allem hinsichtlich dem gewünschten
Inhalt von Relationen.


 Das ganze oben ist natuerlich zu einfach - Es ist nicht garantiert das
die
 naechstliegende Straße noch in Hilchenbach ist .. D.h. eigentlich
muesste
 man 
 erst das polygon suchen und dann die Straße suchen und zu distance noch
 pruefen
 ob die Straße auch durch das Polygon laeuft ... Aber das sind details
die
 im ersten wurf mal zu vernachlaessigen sind ...


Das kommt noch alles dazu.

Und jetzt noch das Chaos mit den PLZ dazu...

Marcus

___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden marcus.wolschon
On Thu, 29 Oct 2009 12:35:37 +0100, Florian Lohoff f...@rfc822.org wrote:
 On Thu, Oct 29, 2009 at 11:54:37AM +0100, marcus.wolsc...@googlemail.com
 wrote:
 
 Ich arbeite selber gerade an reverse Geocoding mit OSM.
 Allerdings mit höheren Ansprüchen an die Qualität des
 Ergebnisses als die Ad-Hoc SQL-Scripte hier.
 Wird sich noch zeigen wie gut das Resultat dann am Ende
 wird. Dauert alles noch.
 
 
 Was kannst du da besser machen? Die SQL Scripte geben exakte resultate
 d.h. nach spatialen kriterien. 

Die Daten vorher passend massieren.
* PLZ -Suche ermöglichen 
* In Tags angegebene Länder, Orte, PLZ, ... beachten.
* Multipolygone beachten.
* Verschiedene Tag-Schreibweisen und alternativ verwendete Tags.
* Die ganze Hausnummern-Zuordnung incl. Interpolation.

 Und nachdenken muss jeder der sowas macht ... Die anforderung
 bestimmt das ergebniss ...
 
 Und du kannst ja mal deine generische behauptung untermauern mit fakten
 oder
 meinungen - Das alles scheisse ist weiss ich - erzaehle ich auch jedem
der
 es
 nicht hoeren moechte ...

Hab ich das behauptet?
Ich lese nur dass ich recht hohe Ansprüche an die
Korrektheit des Ergebnisses stelle. Eine Anforderung
die nicht überall nötig ist.

Marcus

___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden marcus.wolschon
On Thu, 29 Oct 2009 13:05:45 +0100, Florian Lohoff f...@rfc822.org wrote:
 Damit bezweifelst du dir korrektheit der SQL Statements - hast du
 dafuer belege? Das oben ist nur zusaetzliche information aber nichts
 was mit korrektheit zu tun hat.

Sie sind insofern nicht korrekt, dass die durchaus möglicher Rolle
inner z.B. nicht beachtet wird und wege in anderen Rollen als
 und outer nicht ignoriert werden. 
z.B. dürfte jeder eine Referenz
mit einer neuen Rolle part_of auf das Polygon eines umgebenden Gebietes
einbauen oder Partnerstadt auf das Polygon einer anderen Ortschaft
und solche Spässe. Darf ja jeder machen wie er will da so eine Rolle
noch nicht mit einer anderen Semantik benutzt wird oder dokumentiert ist.

 Und bei deiner Tag-Schreibweisen bin ich ja ein erklaerter gegner.
 Derjeniger moechte das die Daten funktionieren soll die Tags richtig
 schreiben und nicht allen die die daten verarbeiten aufzwingen
 megabyte an alternativschreibweisenlisten zu pflegen.

addr:postcode ist genauso richtig wie postal_code.
is_in:country ist genauso richtig wie addr:country
...

Marcus

___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden marcus.wolschon
On Thu, 29 Oct 2009 13:11:54 +0100, Satz Klauer satzkla...@googlemail.com
wrote:
 Nana, nicht gleich streiten! Das war ja nun wirklich eine eher
 harmlose Frage - was macht ihr bei einer Diskussion Windows vs. Linux
 oder Java vs. C#? ;-)
 
 On 10/29/09, marcus.wolsc...@googlemail.com
 marcus.wolsc...@googlemail.com wrote:

 Ich arbeite selber gerade an reverse Geocoding mit OSM.
 
 Klingt gut - wird es Open Source?


Unwarscheinlich aber einige Ideen, die mir so gekommen sind, kann
ich für die  beiden alternativen Vorwärts-Adresssuchen in Traveling
Salesman gut verwenden.

Marcus

___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden marcus.wolschon
On Thu, 29 Oct 2009 15:20:52 +0100, Florian Lohoff f...@rfc822.org wrote:
 On Thu, Oct 29, 2009 at 03:17:09PM +0100, marcus.wolsc...@googlemail.com
 wrote:
 On Thu, 29 Oct 2009 13:05:45 +0100, Florian Lohoff f...@rfc822.org
 wrote:
  Damit bezweifelst du dir korrektheit der SQL Statements - hast du
  dafuer belege? Das oben ist nur zusaetzliche information aber nichts
  was mit korrektheit zu tun hat.
 
 Sie sind insofern nicht korrekt, dass die durchaus möglicher Rolle
 inner z.B. nicht beachtet wird und wege in anderen Rollen als
  und outer nicht ignoriert werden. 
 
 Wieviele admin boundarys mit enclaven oder exclaven haben wir denn in D?
 Und wieviel
 der prozentualen flaeche macht das aus?

a)
Ich beschränke mich nicht auf D. Warum nimmst du das an?
b)
Ganze Länder sind selber ein admin-boundary mit Exclaven und Enclaven.
Wie viel mehr Fläche hättest du gerne?
Alles admin_boundary sind ja gleich zu verarbeiten. Egal was in admin_level
steht.
Also behandelst du ein paar gültige Fälle halt nicht.
Das macht in 99% keine Probleme und man kann es als Design-Entscheidung
problemlos akzeptieren. Muss man aber nicht.

 z.B. dürfte jeder eine Referenz
 mit einer neuen Rolle part_of auf das Polygon eines umgebenden
Gebietes
 einbauen oder Partnerstadt auf das Polygon einer anderen Ortschaft
 und solche Spässe. Darf ja jeder machen wie er will da so eine Rolle
 noch nicht mit einer anderen Semantik benutzt wird oder dokumentiert
 ist.Q
 
 Das problem ist alleine das in D wir mal alles ganz anders machen als
alle
 anderen - type=multipolygon hat international nichts mit grenzen zu tun -
 Nur
 in D ...

Es ist trivial zu unterstützen also kann man's auch gleich universell
machen. Multipolygon ist neben Polygon ja einer der Standard-Datentypen
in der GIS-Erweiterung.
Wenn wir es in D anders machen als woanders, dann muss eine Suche halt
mit Deutschland und mit dem Rest der Welt umgehen können ohne Fehler zu
machen.

  Und bei deiner Tag-Schreibweisen bin ich ja ein erklaerter gegner.
  Derjeniger moechte das die Daten funktionieren soll die Tags richtig
  schreiben und nicht allen die die daten verarbeiten aufzwingen
  megabyte an alternativschreibweisenlisten zu pflegen.

Verschiedene Philosophien.
Du verweigerst ein korrektes Ergebniss und willst so Mapper zwingen
korrekt zu mappen. Dabei unterstelle ich dir mal dass du annimmst,
derjenige welcher die Suche benutzt ist überhaupt Mapper.
Ich will das akurateste mögliche Ergebniss mit dem was momentan
so tatsächlich getagged ist. Das umfasst auch sehr oft benutzte, alte
Tags welche nützliche Informationen enthalten. (wie z.B. postal_code)

 addr:postcode ist genauso richtig wie postal_code.
 is_in:country ist genauso richtig wie addr:country
 
 Wofuer brauche ich die in dem obigen Beispiel?

Du brauchst sie, weil PLZ, Land und Hausnummer untrennbar zur Adresse
gehören.
Und jetzt lass mal das Rumgetrolle. Das ich nach mehr als nur Strasse+Ort
suche ist dir ja jetzt ausreichend bekannt.

Marcus


___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden Martin Koppenhoefer
  Und bei deiner Tag-Schreibweisen bin ich ja ein erklaerter gegner.
  Derjeniger moechte das die Daten funktionieren soll die Tags richtig
  schreiben und nicht allen die die daten verarbeiten aufzwingen
  megabyte an alternativschreibweisenlisten zu pflegen.

 addr:postcode ist genauso richtig wie postal_code.
 is_in:country ist genauso richtig wie addr:country


ja klar, es ist alles richtig in OSM, auch heiwei=preimeri, nur halt ein
bisschen unueblicher, aber vielleicht hat sich derjenige ja was dabei
gedacht.

Schadet trotzdem nicht, die tags, die derzeit/mittlerweile ueblich sind,
bevorzugt zu nennen, da man so die Daten am ehesten einheitlich bekommt.
Wenn man bei jeder Gelegenheit auch weniger haeufig verwendete Alternativen
promoted, wird dieses Ziel noch schwerer zu erreichen.

Die addr:... -Tags haben ja z.B. den Vorteil, dass sie einer durchgehenden
Logik (Adressen-namespace) folgen, waehrend man sich ansonsten die Dinger
aus name, postal_code und isin einzeln zusammensuchen muss.

Gruss Martin
___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden Marcus Wolschon
2009/10/29 Martin Koppenhoefer dieterdre...@gmail.com:

  Und bei deiner Tag-Schreibweisen bin ich ja ein erklaerter gegner.
  Derjeniger moechte das die Daten funktionieren soll die Tags richtig
  schreiben und nicht allen die die daten verarbeiten aufzwingen
  megabyte an alternativschreibweisenlisten zu pflegen.

 addr:postcode ist genauso richtig wie postal_code.
 is_in:country ist genauso richtig wie addr:country

 ja klar, es ist alles richtig in OSM, auch heiwei=preimeri, nur halt ein
 bisschen unueblicher, aber vielleicht hat sich derjenige ja was dabei
 gedacht.

 Schadet trotzdem nicht, die tags, die derzeit/mittlerweile ueblich sind,
 bevorzugt zu nennen, da man so die Daten am ehesten einheitlich bekommt.
 Wenn man bei jeder Gelegenheit auch weniger haeufig verwendete Alternativen
 promoted, wird dieses Ziel noch schwerer zu erreichen.

 Die addr:... -Tags haben ja z.B. den Vorteil, dass sie einer durchgehenden
 Logik (Adressen-namespace) folgen, waehrend man sich ansonsten die Dinger
 aus name, postal_code und isin einzeln zusammensuchen muss.

Das hat nur bei interaktiven Anwendungen, nur wenn der Nutzer Mapper ist
und nur wenn der Nutzer erfährt warum da keine Adresse raus kommt
erzieherische Wirkung.

Wie gesagt, ist nicht mein Ziel. Mir geht es in diesem einen Fall darum
OSM zu promoten mit hey, schaut mal wie gut und zuverlässig das schon
klappen kann.

Marcus

___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Orts/Straßennamen zu Koordinaten finden

2009-10-29 Diskussionsfäden Mirko Küster
 Schadet trotzdem nicht, die tags, die derzeit/mittlerweile ueblich sind, 
 bevorzugt zu nennen, da man so die Daten am ehesten einheitlich  bekommt. 
 Wenn man bei jeder Gelegenheit auch weniger haeufig verwendete Alternativen 
 promoted, wird dieses Ziel noch schwerer zu  erreichen.

Guckt man in die Daten so machen is_in:country und postal_code gerade mal noch 
5% im tagging aus, der Rest hat es mit dem Karlsruher Schema ausgedrückt. 
Könnte man also getrost beerdigen.

Würde man das Karlsruher Schema noch um Kreise etc. erweitern, könnte man sich 
auch noch das is_in komplett schenken und hätte langsam eine einheitliche 
Ausdrucksform für Standortfragen. Zumal die einzel is_in sowieso kaum einer 
nutzt und statdessen das schlecht auswertbare full is_in mit Kommas noch zu 90% 
in Nutzung ist.

Gruß
Mirko___
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de