DE:Duck tagging

From OpenStreetMap Wiki
Jump to navigation Jump to search

„Duck tagging“ ist eine Philosophie der Auswahl geeigneter Tags für den Gebrauch in OSM. Der folgende Text ist ein Essay (ursprünglich ein Posting in einer Mailingliste) von Richard.

Das OSM-Tagging funktioniert seit jeher durch die Benennung von „Objekten“, die zumindest einigermaßen deutlich sind: Dies ist eine Apotheke, dies eine Hauptverkehrsstraße, dies ein Kanal. Dies ist ein Bauernhof, dies ist ein Bahnhof, dies ist ein Radweg. Jedes Objekt enthält in ausreichendem Maß von sich aus grundlegende Informationen über sich. Dies ist ein Bahnhof: Fahrgäste haben dort Zugang; Züge halten dort; man kann dort warten, bis der Zug eingefahren ist. Dies ist eine Apotheke: es handelt sich also um ein Geschäft, in dem man Medikamente kaufen kann.

Jeder Mapper kann natürlich mit weiteren Tags die Grundinformationen präzisieren. So könnte man bei einer Apotheke nächtliche Öffnungszeiten ergänzen. Bei einem Bahnhof könnte man zusätzlich „access=private“ taggen, wenn es sich um einen militärisch (wie bei uns in der Nähe von Bicester, UK) oder einen privatwirtschaftlich (wie den „IBM“-Bahnhof in Schottland) genutzten handelt. Man könnte solche Beispiele beliebig fortsetzen. In gelebter „OSM-Manier“ ist das häufig ein iterativer Prozess: Zuerst wird ein Objekt nur mit dem Basis-Tag gemappt, später wird die Grundinformation mit zusätzlichen Tags verfeinert.

Der Grund für diese Vorgehensweise ist das Ziel, es den Mappern, die unsere wertvollste Ressource sind, möglichst einfach zu machen, zur Erweiterung der Datenbasis der OSM-Karte beizutragen. Von Datennutzern wird die Nachverarbeitung erwartet, die sie natürlich sowieso vornehmen werden (Rendern und Erzeugen der Daten für Routingzwecke, Extrahieren und Neuformatieren für Ortsverzeichnisse oder was auch immer). Aber sie brauchen dann nur mit den wirklich benötigten Daten zu arbeiten. Den Renderer interessiert es vermutlich nicht, ob Apotheken Tag und Nacht geöffnet sind, und er zeigt deshalb alle mit demselben Symbol. Einen Eisenbahnsimulator kümmert das sowieso einen feuchten Kehricht, was evt. sogar für die privaten Bahnhöfe zutrifft - soll der Lokführer da doch ruhig anhalten. Und so weiter. Mappe also grundsätzlich gemäß dem Ententest - wenn das Objekt wie eine Ente aussieht, quakt und watschelt, dann nenne es auch Ente.

Das erspart Dir jedes Mal 'ne Menge Zeit, wenn Du diese Vogelart mappst. Sollte es sich tatsächlich aber um den seltenen Florglenood der äußeren Hebriden handeln, der aber keine 100-%-ige Ente ist, obwohl er sich genauso verhält und aussieht , dann tagge eben „wildfowl=duck“ und „species=florglenood“.

Für „highway=cycleway“ gilt dasselbe. Dieses Objekt weist viele Eigenschaften auf: es ist fürs Radfahren geeignet, Radfahrer und Fußgänger dürfen es benutzen, aber motorisierte Fahrzeuge nicht. Es quakt halt wie ein Radweg. Das erspart Mappern 'ne Menge Tagging-Arbeit und bedeutet, dass Kunden sich nicht um detaillierte Angaben kümmern müssen, wenn sie es nicht wollen. Natürlich kann, wer möchte, zusätzliche Angaben machen: im Fall, dass man dort nicht zu Fuß gehen darf, wird halt „highway=cycleway“ und „foot=no“ getaggt.

Das Tag „highway=path“ hingegen ist ein eher inhaltsleeres Tag, da es weitgehend bedeutungslos ist. Es bedeutet hingegen zusätzliche Arbeit für den Mapper, da er hier von vornherein vier Tags eintragen muss, wo eigentlich eines ausreichen würde. Das macht es z. B. auch für einen Renderer schwerer, der jetzt vier Tags statt eines als Grundlage für die grafische Darstellung auswerten muss. So sprechen wir nicht über Enten. Also taggen wir so besser auch keine Bahnhöfe, Apotheken, Hauptverkehrsstraßen oder Bauernhöfe, und so [vom Übersetzer ergänzt: als "path"] sollten wir eben keine Radwege taggen. (Ende des Essays)

Achtung: Für Deutschland trifft das cycleway-Beispiel nicht zu! Im Gegensatz zum UK ist in Deutschland das Zu-Fuß-Gehen auf dezidierten Radwegen (Vz. 237) verboten. Ist es OTG ausnahmsweise erlaubt, müsste bei "highway=cycleway" zusätzlich "foot=yes" getaggt werden!