Template:WFS gazetteer
From MapbenderWiki
successor of the deprecated WFS gazetteer (May 25, 2007)
requires the following modules:
Contents |
Description
english
This iframe element is a search dialog for a gazetteer based on OGC WFS. LoadWFS to the GUI where you want to use the search dialog. If you want to select between multiple WFS searches, configure WFS_gazetteer with several wfs configurations (for more information see "How To" below). Make sure that both your Version of Mapbender and your Server support WFS.
Prerequisite
This module requires an OGC WFS as data source.
How To
Add an iframe <wfs_gazetteer> to your GUI. Add all GazetteerIDs of WFS which you want to use for WFS search to the element var wfsConfIdString as a comma seperated list of WFS conf ids, like 1,2,3. To use WFS gazetteer there has to be at least one GazetteerID given in wfsConfIdString. Make sure that your wfs configurations contain all parameters which are needed. As from Mapbender version 2.5 make also sure that all WFS confs you want to use are assigned to your gui (see table "gui_wfs_conf" or go to "assign WFS conf to gui" in WFS admin guis).
- Target: mapframe1
- SRC: ../php/mod_wfs_gazetteer_client.php?sessionID&target=mapframe1,overview
Highlighting
Features are returned as GML documents by the WFS. Mapbender transforms the GML to a JavaScript object that highlights the geometry. Rendering of the highlighting geometry is implemented in two ways, either client or server side. As of Mapbender 2.5 there exists additional element var maxHighlightedPoints (for more information see point Element vars below).
- Client-side
For client-side rendering you need to load the module "wz_jsgraphics.js" at least once into the corresponding GUI so that it can be called by the gazetteer function. This can be done by adding a reference to the gazetteer SRC: ../php/mod_wfs_gazetteer.php...) by entering the path as a property to "Module:" ../extensions/wz_jsgraphics.js
Additionally you have to check "WZ-Graphics:" when configuring the WFS gazetteer: http://localhost/mapbender_dev/php/mod_wfs_conf.php?
- Server-side
The alternative is to render a transparent PNG with a marker. To do that MB needs to be able to write to a temporary directory and the PHP environment must be enabled and allowed to write images (the same what you need to create PDF for server side generated printouts).
Notice
- If you use UMN MapServer as WFS find more information here:
http://mapserver.gis.umn.edu/docs/howto/wfs_server/
- Make sure to include the EXTENT parameter to the WFS section.
- Make sure to include "gml_include_items" or you don't get anything
METADATA "wfs_title" "Provinces" ## REQUIRED "gml_include_items" "all" ## Optional (serves all attributes for layer) END
- MaintainMe! There is an open issue with the performance of the WFS as a gazetteer regarding non-geometric queries on large databases (> 1 million). The problem has been identified and was supposed be solved in a new UMN MapServer release
deutsch
wfs_gazetteer.php implementiert einen Suchdialog für einen OGC WFS gazetteer. Es ist möglich, mehrere WFS-Suchen einzubinden und diese aus einer Auswahlbox zu selektieren. Hierfür müssen mehrere WFS-Konfigurationen angegeben werden (siehe Beispiel unter "Anwendung"). Es ist darauf zu achten, dass sowohl die Mapbender-Version als auch die eingebundenen Server WFS 1.0.0 unterstützen.
Anwendung
Das Modul wird über das Anlegen eines iframes eingebunden. Alle WFS-Konfigurationen, die für die Suche genutzt werden sollen, werden über die element var wfsConfIdString als komma-separierte Liste angegeben. Es sollte mindestens eine GazetteerID existieren. Es ist zu überprüfen, ob die WFS-Konfigurationen mit allen notwendigen Parametern versehen sind. Ab Mapbender-Version 2.5 ist zudem sicherzustellen, dass alle WFS-Konfigurationen, die benutzt werden sollen, der Gui, in der das Suchmodul verwendet wird, zugeordnet sind (Tabelle "gui_wfs_conf" oder "assign WFS conf to gui" in den WFS admin Guis).
- Target: mapframe1
- SRC: ../php/mod_wfs_gazetteer_client.php?sessionID&target=mapframe1,overview
Highlighting
Zurückgegebene Objekte können gehighlightet werden. Jedes zurückgegebene Objekt hat eine JavaScript-Funktion, die das GML highlightet durch client- oder serverseitige Wiedergabe. Ab Mapbender 2.5 gibt es für das Highlighting eine zusätzliche Variable maxHighlightedPoints (weitere Informationen dazu gibt es weiter unten unter Element vars).
Clientseitig
Für eine clientseitige Wiedergabe ist es notwendig das Modul "wz_jsgraphics.js" zumindest einmal in die entsprechende GUI zu laden, so dass es von der Gazetteer-Funktion aufgerufen werden kann. Dies kann erreicht werden durch das Hinzufügen des Verweises in die Gazetteer "SRC:" ../php/mod_wfs_gazetteer.php... und die Eingabe des Verzeichnisses unter "Module:" ../extensions/wz_jsgraphics.js
Zusätzlich muss "WZ-Graphics:" geprüft werden, wenn der WFS Gazetteer konfiguriert wird: ../php/mod_wfs_conf.php
Serverseitig
Die Alternative ist die Wiedergabe eines transparenten PNG mit einem Marker. Um das zu bewerkstelligen muss Mapbender in der Lage sein in ein temporäres Verzeichnis zu schreiben und die PHP Umgebung muss in der Lage und berechtigt sein Bilder zu schreiben (das selbe was man braucht, um ein PDF zu erzeugen für serverseitig generierte Ausdrucke).
Hinweis:
- Weitergehende Informationen zu UMN als WFS-Server: http://mapserver.gis.umn.edu/docs/howto/wfs_server/
- "gml_include_items" muss eingetragen werden, sonst werden keine Felder zurückgeliefert.
METADATA "wfs_title" "Provinces" ## REQUIRED "gml_include_items" "all" ## Optional (serves all attributes for layer) END
- Der EXTENT des WFS muß gesetzt werden und sollte unbedingt die Daten der Suche einschließen.
- MaintainMe! Es gibt ein offenes Leistungsproblem bei rein alphanumerischer Suche mit vielen Datensätzen (> 1 Million). Das Problem wurde identifiziert und soll in einer nächsten MapServer-Version behoben werden.
Element vars
wfsConfIdString: a comma separated list of WFS conf ids, like 1,2,3 / eine kommaseparierte Liste von WFS conf IDs, z.B. 1,2,3
Mapbender version 2.5: maxHighlightedPoints: max number of points to highlight, like 500 / max. Anzahl an Punkten, die vollständig gehighlightet werden, z.B. 500
Files
For this module the following files are required / Für dieses Modul werden die folgenden Dateien benötigt:
SQL
Use this sql statement to insert this module in the corresponding gui / Mit diesem SQL das Modul in die entsprechende GUI einfügen:

