Template:De:Relation/doc

From OpenStreetMap Wiki
Jump to navigation Jump to search

exclamation mark

Beachte: Diese Vorlage wird auf einer großen Anzahl Seiten benutzt. Um die Server nicht zu überlasten, sollten Veränderungen in Grenzen gehalten werden.
Bitte schlage Veränderungen zuerst auf der Diskussionsseite vor.
Das Bearbeiten einer Vorlage sorgt dafür, dass alle Seiten, die die Vorlage benutzen, neu gerendert werden. Wenn die Vorlage oft benutzt wird, kann dies den Server stark belasten, da die Auftragswarteschlange gefüllt wird. [Statistiken]

Diese Seite dokumentiert die Vorlagen {{Area}}, {{Node}}, {{Relation}} und {{Way}}. Sie werden genutzt, um auf Knoten, Wege oder Relationen zu verweisen sowie Links zum Bearbeiten und zur Analyse bereitzustellen (die Vorlage {{Area}} bezieht sich hierbei auf einen geschlossenen Linienzug). Alle hier dokumentierten Vorlagen teilen sich den selben Code. Daher funktionieren sie fast identisch ({{Area}} und {{Relation}} haben jeweils kleinere Unterschiede zu den Anderen).
Die Vorlagen wurden im Herbst 2018 neu programmiert, wobei einige Optionen entfernt wurden und die Sprache Lua verwendet wurde.

Benutzung

Die Benutzung aller hier beschriebener Vorlagen ist ähnlich. Es muss nur jeweils der Name angepasst werden (z.B. {{Area|...}} anstelle von {{Node|...}}). Schreibt man

{{node|12345}},

erhält man

node 12345.

Übersicht der Parameter:

Name/Nummer mögliche Werte Beschreibung
1 ganze Zahl bezieht sich auf die ID in OSM, obligatorische Angabe
2 Zeichenkette Beschriftung des größten Links, Voreinstellung: ID
tools all, josm, mini, no, oder short anzuzeigende Links für das Bearbeiten und die Analyse, Voreinstellung: keine (no)
lang Sprachkürzel von MediaWiki bzw. besondere Kürzel in diesem Wiki Einstellung der Beschriftungssprache der Links in einer bestimmten Sprache (siehe Abschnitt Übersetzung unten)

Beispiele

Wiki code Result Note
{{Relation|lang= de |2345}} relation 2345 Das Symbol ist ein Link zum Artikel über Relationen.
{{Relation|lang= de |2345|Promenade}} relation Promenade
{{Relation|lang= de |2345|tools= all }} relation 2345 (iD JOSM Historie analysieren)
{{Relation|lang= de |2345|tools= all |Promenade}} relation Promenade (iD JOSM Historie analysieren)
{{Relation|2345|tools= all |lang= vi }} relation 2345 (iD JOSM lịch sử phân tích) Übersetzung ins Vitnamesische
{{Relation|2345|Promenade|tools= all |lang= ar }} relation Promenade (iD JOSM التاريخ analyse) Help translate this to Arabic Die Übersetzung wechselt vom Arabischen zum Englischen, wo die arabische Version unvollständig ist.
{{Way|12346|tools= all |lang= ar }} way 12346 (iD JOSM التاريخ) Links sind abhängig von dem Element.
{{Relation|lang= de |2345|tools= josm }} relation 2345 (JOSM)
{{Relation|lang= de |2345|tools= josm |Promenade}} relation Promenade (JOSM)
{{Relation|lang= de |2345|tools= mini }} 2345
{{Relation|lang= de |2345|tools= mini |Promenade}} Promenade
{{Relation|lang= de |2345|tools= no }} relation 2345
{{Relation|lang= de |2345|tools= no |Promenade}} relation Promenade
{{Relation|lang= de |2345|tools= short }} 2345 (i J)
{{Relation|lang= de |2345|tools= short |Promenade}} Promenade (i J)
{{Relation||Promenade}} Lua error in Module:Element at line 60: Given relation id parameter is not a number. funktioniert nicht, da ID obligatorisch

Übersetzung

Wenn der Parameter tools mit dem Wert all belegt wird, wird ein Link mit der Beschriftung Historie angezeigt. Die Vorlage {{Relation}} zeigt einen weiteren Link analysieren an. Die Beschriftung wird automatisch an die Seitensprache angepasst. Es gibt auch einen lang-Parameter, um die Sprache explizit festzulegen. Die Feststellung der Sprache anhand des Seitentitels ist ein aufwändiger Prozess (der Parser braucht länger um die Formatangaben zu interpretieren). Leider ist dieser Vorgang bei jedem Aufruf der Vorlage notwendig, auch wenn die selbe Vorlage mehrfach auf einer Seite verwendet wird. Aus diesem Grund versuchen die Vorlagen, Übersetzungen auf ein Minimum zu reduzieren (d.h. die Übersetzung wird nur bei der Angabe von tools=all ausgeführt).

Der lang-Parameter

Der lang-Parameter wird benutzt, um explizit die Sprache festzulegen. Es werden die zwei englischen Begriffe "analyse" und "history" übersetzt. Dies wird nur mit der Angabe tools=all ausgeführt. Außerdem wird der Präfix des Links des Symbols angepasst (z.B. von "Relation" zu "DE:Relation"). Es gibt jedoch keine Überprüfung, ob die Seite wirklich existiert. Wenn die Sprache automatisch bestimmt wurde, wird dieser Link nicht geändert. Das liegt daran, dass die Formatierungen des Symbols vor der Sprachenerkennung ausgeführt werden.

Sprachwahl der Übersetzung

Alle Übersetzungen der Vorlagen werden in Module:Element/translation abgelegt. Es gibt die folgenden Prioritäten zur Festlegung der Sprache:

  1. Eingabe im lang-Parameter
  2. Erkennung des Namensraumes (betrifft DE, ES, FR, IT, JA, NL, RU)
  3. Präfix des Seitentitels (alle weiteren Sprachen)
  4. Voreinstellung: englisch

Falls eine Übersetzung nicht existiert oder unvollständig ist, wird folglich die englische Version angezeigt.
Die Vorlagen {{Hu:Relation}}, {{Pl:Relation}} und {{Pt:Relation}} sind Versionen dieser Vorlage, die stattdessen zum Ungarischen, Polnischen bzw. Portugiesischen wechseln.

Hinzufügen einer Übersetzung

Eine Übersetzung kann hinzugefügt werden, indem die folgenden Zeilen zur Seite Module:Element/translation hinzugefügt werden:

 translateAnalyse = {
 	-- weitere Sprachkürzel alphabetisch vor 'code'
 	['code'] = "Übersetzung",
 	-- weitere Sprachkürzel alphabetisch hinter 'code'
 },
 translateHistory = {
 	-- weitere Sprachkürzel alphabetisch vor 'code'
 	['code'] = "Übersetzung",
 	-- weitere Sprachkürzel alphabetisch hinter 'code'
 },

Fehlende Übersetzungen

Im Falle von fehlenden oder unvollständigen Übersetzungen, wird die Seite, auf der die Vorlage verwendet wird in eine der Unterkategorien von Category:Pages with missing translation hinzugefügt. Diese Eigenschaft kann benutzt werden, um fehlende Übersetzungen dieses Wikis zu finden. Der englische Name der Sprache wird von Module:OSM Constants oder einem Aufruf von mw.language.fetchLanguageName(pageLanguage, 'en') abgeleitet.

Entwurfsentscheidungen

Dieser Abschnitt beschreibt die Begründungen für die getroffenen Entscheidungen bei der Erstellung der Vorlagen. Man sollte ihn lesen, bevor man selbst Vorschläge unterbreitet. Es gibt durchaus auch andere Meinungen zu den Entscheidungen (siehe Diskussionen auf englisch), hier geht es jedoch darum, die aktuelle Umsetzung zu erklären.

Warum werden die Bearbeitungslinks in der Voreinstellung nicht angezeigt?
Das wäre zu "teuer" (siehe Übersetzung). Eine derartige Voreinstellung würde bedeuten, dass viele Seiten in Fehlerkategorien wie Category:Pages where template include size is exceeded auftauchen würden. Außerdem würde es implizieren, dass jeder Benutzer der Vorlage (man denke an einen Beitragenden, der/die nur kurz einen Fehler hier beheben will und das Hintergrundwissen nicht hat) immer alle Links anzeigen möchte.
Warum gibt es nur so wenige Bearbeitungslinks?
Dies sind relativ allgemeine Vorlagen. Spezifischere Links können direkt auf der jeweiligen Seite angelegt werden. Es gilt zu bedenken, dass der Parser diese Vorlage nicht zwischenspeichern kann. Folglich müssen beim Verweis auf fünf Relationen im schlimmsten Fall 35 (=5 * 7) Links angelegt werden (d.h. alle Bearbeitungslinks werden angezeigt).
Warum wurde die Option "noch nicht definierte Relation" entfernt?
Diese Option konterkariert den Zweck der Vorlage: Sie soll dem Verweis auf ein bestehendes Element der Datenbank dienen. Gibt es dieses Element noch nicht, kann man die Vorlage einfach weglassen (so wie es bereits vor der Entfernung bereits regelmäßig passierte). Ein solcher Link wäre ungefähr genauso brauchbar, wie ein Link auf eine Webseite, die nur den Text "Webseite im Aufbau" enthält. Des Weiteren musste der Parser zum Anzeigen des Textes die Seitensprache herausfinden und die passende Übersetzung für jeden Aufruf finden. Ein solches Ergebnis lässt sich mit deutlich geringeren Kosten realisieren, indem man Text selbst einfügt.
Warum gibt es keine Statusangabe?
Die Vorlage State offeriert vielseitige Varianten den Zustand der Kartenerfassung zu dokumentieren.
Warum werden verkürzte URL benutzt?
Einige Wikiseiten enthalten diese Vorlage über 1000 Mal. Würde man die kurzen URL osm.org mit der langen Variante openstreetmap.org ersetzen, würde das die Größe der substituierten Vorlage um elf Zeichen erhöhen. Das würde dann zu 11.000 zusätzlichen Zeichen in einem derartigen Artikel führen. Zusätzlich gibt es auch Parameter, die zu mehreren Links führen und damit zu einem noch stärkeren Zuwachs.