DE:Taginfo/Taglists

From OpenStreetMap Wiki
Jump to navigation Jump to search

Die Taginfo API kann erweiterte Listen von Tags ausgeben. Du kannst bestimmen, welche Tags in dieser Liste und taginfo Elementtypen, Beschreibung, Beispielbilder und (optional) Verwendungszählungen aus der Datenbank hinzugefügt werden.

Dies kann verwendet werden, um Tabellen von Tags im OSM-Wiki mithilfe einer einfachen Vorlage zu erstellen. Anstatt die Tabellen manuell zusammenzustellen und zu pflegen, lass Taginfo die Arbeit für Dich erledigen.

Tag-Listen in dieses Wiki einbinden

Verwende die Vorlage Tagliste mit einer Liste von Tags als tags Parameter:

{{Taglist|tags=highway=motorway,trunk,primary,secondary,tertiary,oneway=yes}}

Und Du bekommst eine Tabelle wie folgt:

LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
Diese Tabelle wird automatisch generiert. Siehe Template:Taglist für die Dokumentation.

Einstellen der Sprache

Mit dem Parameter lang kannst Du die gewünschte Sprache festlegen. Die Voreinstellung ist en (Englisch). Damit ergibt …

{{Taglist|tags=highway=motorway,trunk,primary,secondary,tertiary,oneway=yes|lang=ru}}

… eine Tabelle auf Russisch:

LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
Эта таблица создаётся автоматически. Документацию по ней смотрите на Template:Taglist.

Beachte, dass für die Lokalisierung zwei Dinge benötigt werden:

1. Taginfo braucht für die Texte im Tabellenkopf für die jeweilige Sprache Vorlagen, die unter https://github.com/joto/taginfo/blob/master/web/public/js/taglists.js stehen sollten. (Updates sind nur durch manuellen Eingriffen möglich, die einige Tage dauern können.)

2. Die key/tag-Beschreibung muss im Wiki in dieser Sprache verfügbar sein. Aktualisiere die Info-Box auf der key/tag-Seite für diese. Updates stehen nach dem nächsten Update von Taginfo, normalerweise innerhalb eines Tages, zur Verfügung.

Die Spracheinstellung wird, wenn nichts angegeben ist, auch aus der web-Adresse ermittelt.

Hinzufügen von Verwendungszählungen zur Tabelle

Füge den Parameter with_count=true hinzu, wenn die Verwendungszählungen aus der Datenbank hinzufügt werden sollen:

{{Taglist|tags=highway=motorway,trunk,primary,secondary,tertiary,oneway=yes|with_count=true}}

ergibt:

LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
Diese Tabelle wird automatisch generiert. Siehe Template:Taglist für die Dokumentation.

Rendering-Symbole zur Tabelle hinzufügen

Füge den Parameter with_rendering=true hinzu, wenn ein Symbol hinzufügt werden soll, das zeigt, wie das Tag im Standard-OSM-Stil dargestellt wird:

{{Taglist|tags=shop=tea,bag|with_rendering=true}}

ergibt:

LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
Diese Tabelle wird automatisch generiert. Siehe Template:Taglist für die Dokumentation.

Die Größe der Symbole ist die Originalgröße. (Die Größe wird im svg-File mit width="xx" height="yy" festgelegt.)

Erstellt eine Liste mit "all"-Tags für einen Schlüssel

Du kannst eine Liste von "all"-Tags für einen bestimmten Schlüssel erstellen, indem Du nur den Schlüssel angibst:

{{Taglist|tags=access}}
LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
Diese Tabelle wird automatisch generiert. Siehe Template:Taglist für die Dokumentation.

Die Liste enthält nicht alle Tags, sondern nur die, die im Wiki dokumentiert sind. Um genauer zu sein: Die Tag-Seite muss vorhanden sein und die Template:ValueDescription Info-Box enthalten. Diese Verwendung ist wahrscheinlich nicht das, was Du in den meisten Fällen willst, weil die Liste sich ändern kann, ohne dass Du es bemerkst, und man könnte seltsame Tags bekommen, wo man sie nicht erwartet. So ist es besser, genau aufzuschreiben, welche Tags in dieser Liste sein sollen.

Einbindung einer Tagliste in die eigene Website

Binde die beiden Skripte von jQuery und taglists.js in deine Website ein:

<script type="text/javascript" src=".../jquery-1.9.0.min.js"></script>
<script type="text/javascript" src="https://taginfo.openstreetmap.org/js/taglists.js"></script>

Nun kannst Du mit einem kleinen HTML Abschnitt eine Tagliste in eine Seite einbinden:

<div class="taglist"
     data-taginfo-taglist-tags="highway=motorway,trunk,primary,secondary,tertiary">
</div>

Die Liste der Tags kann etwas im folgenden Format sein: KEY1=VALUE1a,VALUE1b,…,KEY2=VALUE2a,VALUE2b,…. Wenn Du nur einen Key hinzufügst, dann wird die Tabelle alle Werte dieses Keys enthalten, die wir im Wiki haben.

Du kannst Optionen mit dem Key data-taginfo-taglist-options hinzufügen. Somit kannst Du die Sprache ändern:

<div class="taglist"
    data-taginfo-taglist-tags="natural=wood,landuse=forest"
    data-taginfo-taglist-options='{"lang": "de"}'>
</div>

Und Du kannst den Nutzungszähler aus der Datenbank einbinden:

<div class="taglist"
    data-taginfo-taglist-tags="natural=wood,landuse=forest"
    data-taginfo-taglist-options='{"with_count": true}'>
</div>

Zuletzt musst Du die convert_to_taglist Funktion aufrufen, um die Tabelle zu erzeugen:

<script type="text/javascript">
jQuery(document).ready(function() {
    taginfo_taglist.convert_to_taglist('.taglist');
});
</script>

Dies wird den div Tag in der Website durch die Tabelle ersetzen.

Das table Element hat die taginfo-taglist Klasse. Diese kannst Du zum Anpassen des Aussehens mit CSS verwenden.

Diese Funktionalität nutzt den Taginfo API Aufruf tags/list. Beachte dazu https://taginfo.openstreetmap.org/taginfo/apidoc#api_4_tags_list für weitere Informationen.