Diskussion:OpenPOIMap: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
(Tasklist)
K (Tasklist)
Zeile 2: Zeile 2:
  
 
Verschiedenes:
 
Verschiedenes:
* Umstellung auf den schnelleren EOSMBBOne.
+
* Umstellung auf den schnelleren EOSMBBOne (Mail von Michael).
 +
* BUG: Download geht nicht mehr (und war früher extrem langsam).
  
 
GUI/Webfrontend:
 
GUI/Webfrontend:
Zeile 22: Zeile 23:
 
** 'addr', also z.B. addr:street = Oberseestrasse, addr:housenumber = 10, addr:postcode = 8640, addr:city = Rapperswil.
 
** 'addr', also z.B. addr:street = Oberseestrasse, addr:housenumber = 10, addr:postcode = 8640, addr:city = Rapperswil.
 
** => 'Details': Link direkt auf den Node/Way (oder Ausschnitt) der OSM-Website; dafür muss das Feld osm_id vorhanden und richtig gefüllt sein (abhängig von gtype pt, li und po).
 
** => 'Details': Link direkt auf den Node/Way (oder Ausschnitt) der OSM-Website; dafür muss das Feld osm_id vorhanden und richtig gefüllt sein (abhängig von gtype pt, li und po).
** (Nice-to-have/Wishlist: Öffnungszeiten! Siehe [http://wiki.openstreetmap.org/wiki/%C3%96ffnungszeiten 'key:opening_hours']).
+
** => "Name: " selber nicht darstellen und kein Scroll-Fenster wenn es nicht sein muss.
** (Nice-to-have/Wishlist: 'image' (Bsp.: [http://www.openstreetmap.org/browse/way/108243962]).
 
  
 
Markers:  
 
Markers:  

Version vom 5. März 2012, 16:53 Uhr

Tasklist

Verschiedenes:

  • Umstellung auf den schnelleren EOSMBBOne (Mail von Michael).
  • BUG: Download geht nicht mehr (und war früher extrem langsam).

GUI/Webfrontend:

  • Signalisieren, wenn DB offline ist und generell JavaScript optimieren, dass immer etwas dargestellt wird (via about-db-query.php)
  • "Search Tag" (rechts oben) neu links vom HSR-Logo.
  • Webservice-Tab: Übernahme der aktuellen Query als WFS-URL (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011).
  • Permalink: Permalinks (auch) als Shortlink anbieten (wegen langen URLs durch FE/XML-Queries) (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011)

POI Clusters:

  • BUG(kein Bug): Der Minitooltip kommt, aber bei Click drauf die Infobox nicht (oder aber erst nach langer Zeit).
  • BUG: Wenn man dann aufgibt (und generell bei offener Infobox) und zoom macht, lässt sich die Infobox nicht mehr wegklicken (da wohl Objekt-Referenz weg ist?).
  • BUG: Wenn man eingezoomt "Show" klickt und dann herauszoomt, dann werden die jetzt (zu) nahe beeinander liegenden Marker nicht durch Cluster ersetzt.

Infowindow bei POIs:

  • Weblinks anzeigen. Aus Tags herauslesen, v.a. folgende (vgl. [1],[2]):
    • "Buttons": | Zoom in | Detail | (Zoom in=>Level 17, Detail=>OSM)
    • 'name'
    • 'url', 'website' oder 'wikipedia'
    • 'addr', also z.B. addr:street = Oberseestrasse, addr:housenumber = 10, addr:postcode = 8640, addr:city = Rapperswil.
    • => 'Details': Link direkt auf den Node/Way (oder Ausschnitt) der OSM-Website; dafür muss das Feld osm_id vorhanden und richtig gefüllt sein (abhängig von gtype pt, li und po).
    • => "Name: " selber nicht darstellen und kein Scroll-Fenster wenn es nicht sein muss.

Markers:

  • Schönere, satte Punktsymbole (Icons).
  • Konsolidierte Liste von Symbolen aus einem lokalen Symbol-Verzeichnis.
  • "Raffinierterer" Mechanismus (wenn überhaupt) muss noch definiert werden, wie ausgehend von (Key?/)Value im Filter (z.B. castle) der Datei-Namen des Symbols ermittelt wird.
    • falls Symbolname im lokalen Symbol-Verzeichnis vorhanden, anzeigen (lokales Verzeichnis in einem Repository anlegen, das verändert werden kann)
    • falls nicht...
      • ein Standard-Symbol anzeigen (sog. "OpenPOIMap-Allerwelts-Symbol").
      • Ausbauvariante: bevor das Standard-Symbol angezeigt wird, in "bekannten" Symbol-Katalogen suchen und ins lokale Symbol-Verzeichnis kopieren (Kataloge mit Symbolen: OSM Mapnik Symbols/[3] sowie weitere Kataloge auf sfkeller's Delicious Tags 'symbol+list').

(Ev. weitere gemäss Michel's Tasklist...)

Features/Ideen

  • Webapplikation optimiert für Smartphones (iPhone und Android) z.B. mit Hilfe von OpenLayers plus Sencha Touch oder JQuery Mobile
  • "Query Builder"-Tab aufheben und in Download integrieren (falls XML/FE-Sicht hineinpasst) (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011)

History

Verschiedenes:

  • BUG Gruppierungsfehler.
  • Klären, ob Abfrage statt auf osm_point neu auf neu osm_poi funktioniert (könnte noch langsam sein; aber dann findet es auch "landuse=vineyard" und alle Kernkraftwerke :->)?
    • Durchaus möglich. Jedoch sollten mehrere Attribute definiert werden. Ausschliesslich 'name' ist ein bisschen zu wenig, da bspw. die Frage nach allen Busstationen der VBZ nicht funktioniert.
    • FeatureServer-DataStore für PostGIS erweitern und auf hstore mappen.
  • BUG in Query Builder: Wenn man bei Value einen Wert eingibt (z.B. Hotel), dann kommt die gute Hilfe (tourism->hotel). Doch wird dann Key/Value falsch eingefügt.
  • BUG in Home und Query Builder: Group Frame scrollt nicht. Damit erreicht man den ganzen unteren Teil nicht (mit "Done" etc.). Test: Man gebe 7 Key-Values ein, z.B. tourism={camp_site, hotel, hostel, guest_house, chalet, motel, caravan_site}.
  • Tagsearch: mit XML reaktivieren (SQLite)
  • Anzeigen Datum und neu Zeit (via about-db-query.php)
  • Kleiner Mini-Tooltip bei POIs
  • Permalink: BUG (mit Zoom/Level und ev. Query).
  • Query-Tab in Home: XML/FE-Sicht zuklappbar (Default: ausgeklappt) (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011).
  • Kontext-Menu (= "Right Click") in der Karte entweder disablen oder idealerweise mit Funktinen belegen (ähnlich Google Maps) wie "Was ist hier?", Zoom in, Zoom out, "Karte hier zentrieren", sowie ev. "Route von hier" / "Route hierher".
  • Der IE Explorer 8 gibt Javascript Errors und stellt das CSS und die Karte nicht richtig dar.
  • ähnlich wie das Google Maps kann (Infowindow etwas kleiner als bei Google Maps; besser von Infowindow und nicht von Balloon-Tips reden); vgl. [4].
  • Darauf achten, dass sich die Karte möglichst nicht verschiebt, also das Infowindow so lassen auch wenn es oben über den Rand ragt.
  • Nur eine Infobox aufs Mal (beim Klicken auf einen anderen POI verschwindet die erste).
  • Redirect von www.openpoimap.ch auf http://openpoimap.ch

Query Builder:

  • Unnötige Leerzeichen im Filter-Parameter der URL löschen - es wird ja sowieso wieder formattiert (vgl. [5]).
  • im Wizard das "[X]" durch "[-]" oder "[Delete]" ersetzen.
  • "Add group" => "Add Group":
  • Beispiele rechts: Besserer Name für "Like test"
  • Neuer Text anstelle:
 Filter Encoding
 
 The wizard below assists you to build a query conforming to the OGC Filter Encoding Standard v2.0.0.
 
 To start, use the Add Group button. After you have finished building the query, click parse and the query is displayed as XML in the text box below. To display results you can use the search button.
 ... 
 
 Add your query to the box below (supported standard: OGC Filter Encoding v2.0.
 ...

neu (dann mit Fliesstext; "*" steht für Fett):

 Query
 
 The *wizard* assists you in building a query expression conforming to the OGC Filter Encoding 2.0 Encoding Standard.
 To start the wizard, use the *Add Group* button and *Add* key and value. 
 Click *Parse* and the query is displayed as XML in the Query Expression box. 
 You can enter or modify the *Query Expression* directly (use Filter Encoding syntax). 
 When finished, click on *Show* to visualize the result of the query expression on a map.
 
 Wizard
 ... 
 
 Query Expression
 ...

TagFinder:

  • Zurzeit kommt da bei einer Suche ohne Treffer [6] nur der Key ohne Value; und wenn weil man shon/trotzdem auf "[X]" klicken kann (und dort der Value fehlt), kommt ein Error. Das würde ich abfangen und entweder [X] disablen - oder aber zum QueryBuilder wechseln, wo man den Value noch eintragen kann. Noch besser würds dann natürlich über die neue Tag-Suchstrategie.
  • Das "[X]" im TagFinder ist verwirrend. Würde ich ersetzen durch "[+]" oder "[Choose]" oder ähnlich.

Tag-Suchstrategie

Begriffliches:

  • Term: meist identisch mit Wort, jedoch möglicherweise zusammengesetz bzw. mit Space getrennt
  • Tag: Kombination von Key und Value.

Software/Daten:

  • Infos zu Linguistik-Tools, inkl. Synonyme, Thesaurus und Übersetzungen.
  • Taginfo API, geplant neu mit Set von RelatedTerms aus beliebigen OSM-Wiki-Seiten (deutschen und englischen).

Input: Suchbegriff (z.B. "Schloss" mit Sprachcode, z.B. "DE")

Preprocessing:

  1. Add RelatedTerms to AnyLanguage-Termlist: RelatedTerms zu "Schloss" auslesen. Die DE-Termliste enthält nun "Schloss, Villa, Ruine" (via neue Taginfo API, Resultat: AnyLanguage-Termlist)
  2. Translate (AnyLanguage=>EN): Im Beispiel ergibt das eine EN-Termliste "castle, villa, ruin" (mit Bing API, Resultat: EN-Termlist)
  3. Add RelatedTerms to EN-Termlist: EN-Termliste mit RelatedTerms erweitern: EN-Termliste hat nun nebst "castle, villa, ruin" palace" zusätzlich "manor, bunker, chateau, citadel" (via neue Taginfo API, Resultat: Erweiterte EN-Termlist)
  4. Statistik zu EN-Termliste sammeln:
    1. Terms je als Keys und als Values abfragen (bestehende Taginfo API).
    2. Eigennamen ("name = Schloss X") herausfiltern.
  5. Falls Termlists praktisch leer, mit "Fuzzy Match" ersetzen?

Ranking (Vorschlag SK):

  1. Kommt urspr. Suchbegriff als Key vor?
    1. falls value "YES/NO" ist => Rückgabe. Z.B. Suche nach DE:Bank => "EN:bench" ergibt "bench=yes" und "amenity=bench".
    2. ansonsten => Rückgabe Liste mit allen zugehörigen Values (z.B. z.B. Suche nach "EN:amenity" ergibt "amenity=parking; amenity=restaurant; amenity=bench; ...".
  2. Kommt urspr. Suchbegriff als Value vor?
    1. => Rückgabe Value mit entsprechendem KEy. Z.B. Suche nach DE:Bank => "EN:bench" ergibt "amenity=bench".
    2. Zusätzliche positive Gewichtung falls es eine Wiki-Seite zum Suchbegriff gibt.
  3. Dann dasselbe wiederholen mit der EN-Wortliste im Sinne von schwächerem Ranking und "Meinten Sie..."?

Taginfo-Beispiele siehe Taginfo.

Weblinks

Notizen

  • Eine Tag=Value-Paar-Statistik kann auch aktuell und direkt aus der OSM-DB berechnet werden. Das dauert lange - nur schon für CH z.Zt. drei Minuten! - die Daten ändern sich aber nicht so schnell grundlegend). Das bietet auch die TagInfo API.