Diskussion:OpenPOIMap: Unterschied zwischen den Versionen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche
K (Task POI Clusters und Infoboxen)
K (Task Markers / Styling)
Zeile 23: Zeile 23:
  
 
=== Task Markers / Styling ===
 
=== Task Markers / Styling ===
* Icons nicht zu klein machen!
+
* <s>Icons nicht zu klein machen!</s> [[Benutzer:Iocast|Iocast]] 11:58, 31. Mär. 2012 (CEST)
* Konsolidierte von Hand zusammengestellte Liste (z.B. Mapnik) von Marker-Symbolen aus einem lokalen Verzeichnis ('symbols' directory).  
+
* <s>Konsolidierte von Hand zusammengestellte Liste (z.B. Mapnik) von Marker-Symbolen aus einem lokalen Verzeichnis ('symbols' directory).</s> [[Benutzer:Iocast|Iocast]] 11:58, 31. Mär. 2012 (CEST)
 
* Algorithmus:
 
* Algorithmus:
 
** Mittels taginfo-Statistik, der aus der Query (z.B. Key/Value tourism=castle => 'castle') auswählt (ranking) und den Dateinamen des Symbols ermittelt.  
 
** Mittels taginfo-Statistik, der aus der Query (z.B. Key/Value tourism=castle => 'castle') auswählt (ranking) und den Dateinamen des Symbols ermittelt.  

Version vom 31. März 2012, 10:58 Uhr

Task List

Getestet mit folgenden Browsern: Chrome 17 / Safari 5.1.3 (Webtoolkit?), Firefox 10 und IE 8(?).

Allgemeine Tasks

Task Verschiedenes:

  • BUG: Wenn man bei Home das Beispiel "VBZ-Station" anklickt (ganze Schweiz), und dann auf den Cluster-Marker, dann dauert die Abfrage "Loading..." *Minuten*. Wird bei mit AND verknüpften Tags ein SQL mit falschem Operator (ohne Index) erzeugt?

Task GUI/Webfrontend:

  • Permalink: Permalinks (auch) als Shortlink anbieten (wegen langen URLs durch FE/XML-Queries) (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011)
  • Neu Wait Cursor für Download... (bei Firefox?)
  • Die Abfolge (Schritt 1, 2, …) beginnt generell nicht mit der Query, sondern am Besten mit der Wahl des Ausschnitts, also neu mit Schritt 1 !
  • Bei „Home“ braucht es m.E. kein „Restrict query to current map extent.“ - Weder aus Benutzer-, noch aus Implementations-Sicht.
  • Tab „TagFinder“ verliert zurzeit die Filter-Angabe und den Ausschnitt => Diese Parameter sollten erhalten bleiben.

Task POI Clusters und Infoboxen

Infowindow bei POIs:

  • Bei Infowindow von Point-Cluster Scrollbalken verhindern. Iocast 11:54, 31. Mär. 2012 (CEST)
  • Beachten, dass es nebst zum Key 'wikipedia' auch neu heissen kann "wikipedia=de:Hochschule_für_Technik_Rapperswil" (Alternative: 'wikipedia:de').
  • Ev. doch Weblink in Name einbinden (statt separate Zeile). Iocast 21:43, 28. Mär. 2012 (CEST)

Task Markers / Styling

  • Icons nicht zu klein machen! Iocast 11:58, 31. Mär. 2012 (CEST)
  • Konsolidierte von Hand zusammengestellte Liste (z.B. Mapnik) von Marker-Symbolen aus einem lokalen Verzeichnis ('symbols' directory). Iocast 11:58, 31. Mär. 2012 (CEST)
  • Algorithmus:
    • Mittels taginfo-Statistik, der aus der Query (z.B. Key/Value tourism=castle => 'castle') auswählt (ranking) und den Dateinamen des Symbols ermittelt.
      • falls Dateinamen im Verzeichnis 'symbols' vorhanden, anzeigen,
    • falls nicht...
      • Tab "Upload Symbol" anbieten (mit CAPTCHA), um Marker-Symbole, die fehlen selber hochladen zu können.
      • Idee: bevor das Standard-Symbol angezeigt wird, in "bekannten" Symbol-Katalogen suchen und ins lokale Symbol-Verzeichnis kopieren (Kataloge mit Symbolen: OSM Mapnik Symbols/[1] sowie weitere Kataloge auf sfkeller's Delicious Tags 'symbol+list').

Testfälle:

  1. Einfacher Fall: xapi=poi[tourism=zoo]. Value zoo => zoo.png
  2. Fall mit AND-verknüpften Tags: xapi=*[amenity=restaurant][cuisine=pizza]. Welcher Value gilt jetzt? restaurant oder pizza => man wähle den ersten von links?
  3. Fall mit OR-verknüpften Values. xapi=*[tourism=camp_site|hotel|hostel|guest%20house|chalet|motel|caravan_site]. Welcher Value gilt jetzt? => man wähle Tag-Namen?
  4. Fall mit "Nebeneffekt": xapi=*[capacity:disabled=yes]. Hier geht es um Parkplätze, was nirgends steht... => Statistik/taginfo fragen
  5. Fall mit teilweiser Übereinstimmung: Tag heisst "tourism=picnic_site", Symbolname ist "picnic" => was tun?

Features/Ideen

  • "OpenLS Directory Service" (POI-Suche)
  • 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)
  • Infobox:
    • Öffnungszeiten anzeigen, falls vorhanden Siehe 'key:opening_hours'.
    • Bild anzeigen, falls Bild-Weblink vorhanden (Bsp.: 'image' [2]).
  • Suche nach geografischen Namen in der Webmapping-Applikation (bzw. der Datenbank): Diese wichtige Funktion ist noch nicht verfügbar. Es gibt aber behelfsweise eine Lösung mit Hilfe eines Permalinks/Geobookmarks: Man gebe einfach 'poi' und einen Ortsnamen beim geometa Directory ein.
  • Anzeige einer Statistik der POIs (kann)

Keine Fatures sind:

  • "Search Tag" (rechts oben) neu links vom HSR-Logo.
  • Anzeige einer Statistik der POIs (kann zurzeit mit Hilfe des PostGIS-Terminals gelöst werden).

History

März 2012:

  • Tab „Download“: Anstelle “Only download features within the visible map.” neu “Only download data within the current map extent.” Iocast 21:04, 18. Mär. 2012 (CET)
  • Tab „Services“ => besser umbenennen in Tab „Webservices“ Iocast 21:03, 18. Mär. 2012 (CET)
  • Tab „Services“ => Workspace sollte der erste angezeigte Webservice sein. Iocast 21:03, 18. Mär. 2012 (CET)
  • "Normale" Infobox: Weblinks anzeigen und Funktionen zur Weiterverarbeitung anbieten (vgl. oben). Aus Tags herauslesen, v.a. folgende (vgl. [3],[4]): Iocast 08:24, 24. Mär. 2012 (CET)
    • Button "Zoom here" (=>Zoom to Level 17 mit Center auf POI) beim klick auf dem Button wird 1 Level weiter hingezoomt und zentriert. Iocast 07:32, 20. Mär. 2012 (CET)
    • Button "OSM" 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) Iocast 21:05, 18. Mär. 2012 (CET)
    • Feld 'name' => "Name: " selber nicht darstellen. Dafür Name als Weblink (identisch mit "Zoom here") Iocast 11:49, 20. Mär. 2012 (CET)
    • Feld 'url' (+ 'url:official', 'website', 'contact:website') sowie 'wikipedia' (+ 'wikipedia:de') als echte Weblinks. Iocast 16:12, 23. Mär. 2012 (CET)
    • Feld 'addr', also z.B. addr:street = Oberseestrasse, addr:housenumber = 10, addr:postcode = 8640, addr:city = Rapperswil. Iocast 08:24, 24. Mär. 2012 (CET)
  • Anstelle "Loading detail information." besser: "Loading..." Iocast 21:56, 14. Mär. 2012 (CET)
  • Schönere, satte Punktsymbole (Icons). Iocast 08:11, 14. Mär. 2012 (CET)
  • ein Standard-Symbol anzeigen (sog. "OpenPOIMap-Allerwelts-Symbol"). Iocast 21:55, 14. Mär. 2012 (CET)
  • Webservice-Tab: Übernahme der aktuellen Query als WFS-URL (Benutzerwunsch vom GISpunkt-Lunch vom 11.12.2011).
  • Umstellung auf den schnelleren EOSMBBOne (Mail von Michael). Iocast 07:59, 14. Mär. 2012 (CET)
  • Webservice-URL: Basierend auf Shortlink eine spezifische URL anbieten... Iocast 23:21, 12. Mär. 2012 (CET)
    • Wordings beim Workspace:
      • Statt eMail => e-mail; statt Parametername "&s=xxx", besser "&key=xxx" oder "&ws=xxx"?
      • Verschiedene Texte... Bei e-mail erklären, dass das nur zur Identifikation verwendet wird...?

Iocast 11:42, 17. Mär. 2012 (CET)

  • Tab "Download" vor "Services" verschieben. Iocast 08:01, 14. Mär. 2012 (CET)
  • Footer: Es heisst anstelle "Data 10.03.2012 07:22 CC-By-SA by OpenStreetMap" neu "Data 10.03.2012 07:22 ODbL by OpenStreetMap" --Iocast 10:04, 11. Mär. 2012 (CET)
  • TagFinder: Warum findet der TagFinder bei 'picnic' nichts? (richtig wäre 'picnic_site'). Iocast 10:24, 17. Mär. 2012 (CET)
  • Die "template"-URL in der Datei "http://openpoimap.ch/templates/opensearch.xml" stimmt nicht. Iocast 10:54, 17. Mär. 2012 (CET)
  • Einmal in der Karte eingezoomt in Home oder Download, wird der Ausschnitt (Zoom und Lat/Lon) erhalten (nicht wie jetzt auf die Schweiz zurückspringen). Iocast 10:24, 17. Mär. 2012 (CET)
  • Signalisieren, wenn DB offline ist und generell JavaScript optimieren, dass immer etwas dargestellt wird (via about-db-query.php) --Stefan 15:38, 9. Mär. 2012 (CET)
  • BUG: Download geht nicht mehr (und war früher extrem langsam).
  • Fusszeile "GISpunkt" neu "Geometa Lab" (neuer Link: http://wiki.hsr.ch/StefanKeller/wiki.cgi?GeometaLab ) und "Twitter" (neuer Link: http://twitter.com/sfkeller )
  • 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.
  • BUG Gruppierungsfehler.

Februar 2012:

  • 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. [5].
  • 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

Januar 2012 - 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.