Diskussion:OpenPOIMap

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche

Tasklist

Verschiedenes:

  • Scrolling bei grossen FE
  • Anzeigen Datum und neu Zeit (via about-db-query.php)
  • Signalisieren, wenn DB offline ist (via about-db-query.php)
  • 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.
    • Ev. 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)
  • BUG POI Clusters: Gruppierungsfehler.

Benutzerwünsche vom GISpunkt-Lunch vom 11.12.2011:

  • Webservice-Tab: Übernahme der aktuellen Query als WFS-URL.
  • Permalink: Permalinks (auch) als Shortlink anbieten.
  • Permalink: BUG (mit Zoom/Level und ev. Query).
  • Query-Tab: XML/FE-Sicht zuklappbar (Default: ausgeklappt).
  • Generell: "Query Builder"-Tab aufheben und in Download integrieren (falls XML/FE-Sicht hineinpasst)

GUI/Webfrontend:

  • "Search Tag" (rechts oben) neu links vom HSR-Logo.
  • Kleiner Mini-Tooltip plus (grösseres) Infowindow bei POIs einbauen:
    • ähnlich wie das Google Maps kann (Infowindow etwas kleiner als bei Google Maps; besser von Infowindow und nicht von Balloon-Tips reden); vgl. [1].
    • Darauf achten, dass sich die Karte möglichst nicht verschiebt, also das Infowindow so lassen auch wenn es oben über den Rand ragt.
    • Klären: Nur eine Infobox aufs Mal (beim Klicken auf einen anderen POI verschwindet die erste).
    • Weblinks anzeigen, die sich aus Tags herauslesen lassen, v.a. folgende (vgl. [2],[3]):
      • "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.
      • (Nice-to-have/Wishlist: Öffnungszeiten!).
      • (Nice-to-have/Wishlist: 'image' (Bsp.: [4]).
    • Weblink 'Details' anzeigen, der direkt auf den Node/Way (oder Ausschnitt) der OSM-Website zeigt.
    • Dafür muss das Feld osm_id vorhanden und richtig gefüllt sein (sowie die Angabe, ob der POI in der OSM DB ein Node oder ein Way ist).
  • 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.

Schöne Punktsymbole (Icons/Markers):

(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

History

Verschiedenes:

Query Builder:

  • Unnötige Leerzeichen im Filter-Parameter der URL löschen - es wird ja sowieso wieder formattiert (vgl. [6]).
  • 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 [7] 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.