Vorlagenprogrammierung | Diskussionen | Lua | Unterseiten | |||
Modul | Deutsch | English
|
Modul: | Dokumentation |
OSM
– Information über der Inhalt eines Artikels zeigen auf einer dynamischen Karte.
Funktionen für Vorlagen
- Suchen unabhängig von Wikidata Tags
{{#invoke:Lua/Modul|overpass}}
- Suchen nach Objekte für das heutige wikidata Item selbst, wikidata=Q....
{{#invoke:Lua/Modul|wd}}
- Suchen nach Objekte benennt nach das wikidata Objekt, also tagged mit name:etymology:wikidata=Q....
{{#invoke:Lua/Modul|etym}}
- Suchen nach Objekte subject:wikidata=Q....
{{#invoke:Lua/Modul|subject}}
- Suchen nach Kunst erfass von artist:wikidata=Q....
{{#invoke:Lua/Modul|artist}}
- Suchen nach Objekte entwurfen durch architect:wikidata=Q....
{{#invoke:Lua/Modul|architect}}
- Suchen nach Objekte operiert vom operator:wikidata=Q....
{{#invoke:Lua/Modul|operator}}
- Suchen nach Objekte von Merk im Artikel brand:wikidata=Q....
{{#invoke:Lua/Modul|brand}}
- Suchen nach ÖPNV Linien relatiert mit dem Artikel
{{#invoke:Lua/Modul|pt}}
Parameter
- display : Texte auf dem Link
- link : yes, no für gebrauch in andere Templates
- timeout : 15 Sekunde, manchmal muss eine höhere Wert eingestellt werden
- id : kann auch mehrere Werte enthalten, default: the Q-number id of the calling page
- query : erlaubt es die Frage aus zu breiten, das heisst mehr spezifisch zu machen
- prim : nur node, way and/or relation primitiven anzeigen
- coord : Koordinate und einen zoom Factor in folgendes Format: 47.0618984;15.4370248;17 einen bbox werd daraus kalkuliert
- limitToBBOX: yes. Wenn coord gesetzt ist, beschränkt die Frage sich auf dem resultierenden/angezeigten bbox
- run : yes. no einstellen wenn der Benutzer noch die Mögligkeit brauch die Frage an zu passen, oder wenn er vielleicht die Karte noch verschieben muss
- style : ermöglicht es einen MapCSS Styl zu benutzen um das Resultat deutlicher zu machen
Ziel
Wieso ist das aber etwas kompliziert? Eines des Problemes ist das Knoten, Wege und Relationen nicht stabil sind.
Ihre id-nummer also direkt verwenden funkzioniert nicht.
Wikidata
Das Gleiche gilt für Wikidata. Umgekehrt ist es wohl möglich OSM-objekte von Wikidata Tags zu versehen.
Jetzt, wenn zum Beispiel einen Weg getrennt wird, werden beide Teile das wikidata Tag behalten.
Overpass API
Jetzt haben wir aber ein neues Problem. Wie kann man diese Elemente aus der Openstreetmap DB, anhand ihre Wikidata Tags wieder zurückfinden?
Roland Olbricht hat dafür einen Tool entwickelt: Overpass API.
Overpass Turbo
Die rohe Daten sind aber nicht so instruktiv, also ein anderes Werkzeug würde entwickelt, Overpass Turbo.
Query
Das erfassen von Fragen an diese Overpass API ist nicht trivial. Diese Lua Module automatisiert und macht es viel einfacher.
Styl
Overpass Turbo lasst zu eine Style Sheet mit zu geben um das Resultat deutlicher da zu stellen. Wenn keine manuell gesetzt wird, wird der automatisch erfasst.
Allgemeine Hinweise zur Einbindung von Modulen
Eine Einbindung erfolgt jeweils im Format
{{#invoke: OSM |
Funktionsname | Wert1 | Wert2 | NameX=Wert … }}
Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; deren Regeln gelten analog.
Wenn unbekannte Zeichenketten von außen kommen (als Vorlagenparameter), sollte immer mit der Form 1=
Wert gearbeitet werden.
Zu allgemeinen Problemen beachte die Abhilfen wie bei Vorlagen.
Wenn in einer Vorlage ein Modul verwendet wird, sollte auch immer die Vorlage:Dokumentation/Lua in der Dokumentationsseite eingebunden werden.
- Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
- Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
- Die Vorlage wird zur Übersicht kategorisiert in Kategorie:Vorlage:mit Lua-Programmierung.
Zu weiteren Informationen siehe Hilfe:Lua.
Bei Problemen wende dich bitte an die Vorlagen-Werkstatt, in schweren Fällen hilft auch die Lua-Werkstatt.