[[TranslatedPages(revision=198)]]
[[PageOutline(2-10,Inhaltsverzeichnis)]]
''Wenn Sie die Installationsschritte für Objektvorlagen lernen wollen, sehen Sie sich die [[JOSMImage(dialogs/propertiesdialog)]] [wikitr:/Help/Preferences/TaggingPresetPreference Objektvorlagen-Übersicht] in den [[JOSMImage(preference)]] [wikitr:/Help/Action/Preferences Einstellungen]'' an \\
''Wenn Sie Objektvorlagen verwenden wollen oder eine vollständige Referenz der Vorlagen benötigen, siehe [wikitr:/Presets Objektvorlagen]''
= Objektvorlagen =
JOSM unterstützt verteilte Objektvorlagen. Dies ist eine XML-Konfigurationsdatei, die eine grafische Benutzeroberfläche für die Eingabe von Merkmalen (oder Eigenschaften, Anmerkungen, manchmal auch Kartenmerkmale genannt) beschreibt.
Die Objektvorlagen können an beliebiger Stelle im Web oder im lokalen Dateisystem des Benutzers abgelegt werden. JOSM kann für die Verwendung benutzerdefinierter lokaler oder entfernter Objektvorlagen konfiguriert werden.
== Eine neue Objektvorlage erstellen ==
Die Beschreibung einer Objektvorlage geschieht in einem einfachen XML-Format. Details siehe [#XML unten].
Siehe **[source:/trunk/resources/data/defaultpresets.xml defaultpresets.xml]** als Beispiel, welches die meisten der unten aufgelisteten Möglichkeiten abdeckt.
Beispiel:
[[Image(wiki:TaggingPresets:Change 1 object.png,right,link=,margin-left=15)]]
{{{
#!preset
}}}
\\
== XML-Format Beschreibung ==#XML
Das vollständige XSD-Schema ist im URI-Namensraum (http://josm.openstreetmap.de/tagging-preset-1.0) sowie [source:trunk/resources/data/tagging-preset.xsd im Quellverzeichnis] verfügbar.
=== Elemente ===
==== Anfang des Dokuments ====
::
Muss das Hauptelement der Datei sein. Unterstützt folgende Attribute
* **xmlns="http://josm.openstreetmap.de/tagging-preset-1.0"**
* **author** - Der Name des Autors der Vorlage
* **version** - die Versionsnummer der Datei. Für die automatische Versionsanpassung von Vorlagen, die in diesem Wiki verwaltet werden, müssen Sie zwei interne Variablen verwenden: `[[revision]]` (die letzte Versionsnummer der Wikiseite) und `[[date]]` (das Datum der letzten Bearbeitung), z.B. `version="1.[[revision]]_[[date]]"`.
* **description** (i18n) - Beschreibung, was die Datei enthält
* **shortdescription** (i18n) - sehr kurze Übersichtsbeschreibung, z.B. der "Name" der Vorlage
* **link** (i18n) - Webseite für weitere Details (optional)
* **icon** - Bild für die gesamte Vorlage
* **baselanguage** - wenn die Basissprache nicht Englisch ist, geben Sie diese hier an (die Verwendung von nicht englischen Vorlagen-Texten wird die automatische Übersetzung verhindern, sobald sie implementiert ist (#11392))
(i18n) bedeutet, dass die Werte auch lokalisiert werden können (z. B. `de.description`).
\\
==== Kommentare ====
::
Das Dokument kann eingebettete Kommentare enthalten.
\\
==== Erstellung von Vorlagengruppen ====
::
Wird verwendet, um Elemente in Untermenüs zu gruppieren. `name=""` ist erforderlich, `icon=""` ist ein optionales Attribut.
::
Jedes Element ist ein Anmerkungssatz, aus dem ausgewählt werden kann. `name=""` ist erforderlich, `type=""` und `preset_name_label=""` werden empfohlen, `icon=""`, `name_template=""` und `match_expression=""` sind optionale Attribute.
::
Einen Zeilentrenner in das Menü einfügen.
\\
==== Gestaltung des Vorlagenfensters ====
::
Beschriftungen sind statische Texte für die Anzeige. `text=""` ist ein erforderliches Attribut, `icon=""` und `icon_size=""` sind optional.
::
Etwas Freiraum (z.B. eine Leerzeile) einfügen.
::
Dient zur Gruppierung einiger optionaler Elemente eines Eintrags. Das Attribut `text=""` ist optional. Wird es ohne `text=""` verwendet, entspricht dies ``
::
Eine horizontale Trennlinie zwischen den Einträgen einfügen.
::
Einen Weblink für diese Funktion oder für etwas anderes Nützliches angeben. Entweder ist das Attribut `wiki=""` (das auf eine OSM-Wiki-Seite verweist, z.B. `"Tag:leisure=park"`) oder das Attribut `href=""` (vollständige URL) sind erforderlich. Wenn das Attribut `wiki=""` verwendet wird, verweist der Link auf die Wikiseite der Sprache, auf die JOSM eingestellt ist. Existiert diese nicht, wird die englische Seite angezeigt. Wenn `wiki=""` verwendet wird, darf die OSM-Wiki-Seite nicht URL-kodiert sein, z.B. darf sie nicht `"Tag:leisure%3Dpark"` heißen, sondern muss stattdessen `"Tag:leisure=park"` lauten.
::
Um Ankreuzfelder zu gruppieren. Das Attribut `columns=""` ist erforderlich.
::
Dies wird zum Gruppieren von `` benötigt und fügt die Überschrift („Verfügbare Rollen Rolle Anzahl Elemente“) zu der Tabelle hinzu, die durch mehrere Angaben von `` erzeugt wird.
::
Zur Angabe möglicher Rollen von Mitgliedern in Relationen. Das Attribut `key=""` ist erforderlich, `text=""`, `requisite=""`, `count=""`, `type=""`, `member_expression=""` und `regexp=""` sind optional.
::
Fügt einen Link zu einer anderen Vorlage mit einer Beschriftung darüber hinzu. Das Attribut `preset_name=""` ist erforderlich, `text=""` zum Überschreiben der Beschriftung (Standard ist `„Bearbeite auch ...“`) und `text_context=""` sind optional. Eine Folge von `` ohne `text=""` oder einem identischen `text=""` werden unter einer Beschriftung gruppiert. \\
**Achtung** bei Vorlagen mit identischem **`name=""`**, da es nicht vorhersehbar ist, zu welcher Vorlage der Link führt, siehe #12716. \\
Das gleiche Merkmal in beiden Vorlagen zu haben, funktioniert nicht, siehe #18992. \\
Die Verwendung von `` in Vorlagen, die über den [wikitr:/Help/Dialog/RelationEditor Relationseditor] geöffnet werden, führt zu Fehlern, siehe #20044.
\\
==== Ein festes Merkmalspaar spezifizieren ====
::
Mit diesem Element wird ein Merkmal immer auf einen bestimmten Wert gesetzt. `key=""` ist erforderlich und wenn `value=""` vorhanden ist, wird das Merkmal gesetzt. Wenn das Attribut `value=""` weggelassen wird, wird das Merkmal entfernt. Das Attribut `match=""` ist optional.
\\
==== Dialogfelder zur Eingabe und Auswahl von Merkmalen ====#EntrySelectionBoxes
::
Ein Texteingabefeld für beliebige Zeichenketten `key=""` ist obligatorisch, `text=""`, `default=""`, `use_last_as_default=""`, `auto_increment=""`, `length=""`, `alternative_autocomplete_keys=""`, `match=""`, `icon=""` und `icon_size=""` (beide seit r17605) sind optional.
::
Zeigt ein Kombinationsfeld mit mehreren Auswahlmöglichkeiten an. `key=""` und `values=""` sind obligatorisch, `text=""`, `default=""`, `editable=""`, `delimiter=""`, `values_from=""`, `display_values=""`, `short_descriptions=""`, `use_last_as_default=""`, `values_searchable=""`, `length=""`, `values_no_i18n=""`, `values_sort=""`, `match=""`, `icon=""` und `icon_size=""` (beide seit r17605) sind optional. \\
Wenn `editable=""` auf `true` steht (Standard), können Kombinationsfelder wie Textfelder bearbeitet werden (zusätzlich zum Dropdown-Menü). Nicht editierbare Kombinationsfelder können nur einen der angegebenen Werte enthalten.\\
Wenn der Schlüssel `colour` oder `colour:*` oder `*:color` ist, wird eine Farbvorschau und ein Farbwähler auf der rechten Seite hinzugefügt (siehe #8352).
[=#multiselect]
::
Zeigt eine Liste an, aus der kein oder mehr Elemente ausgewählt werden können. `key=""` und `values=""` sind obligatorisch, und `text=""`, `default=""`, `delimiter=""`, `values_from=""`, `rows=""`, `display_values=""`, `short_descriptions=""`, `use_last_as_default=""`, `values_searchable=""`, `values_no_i18n=""`, `values_sort=""`, `match=""`, `icon=""` und `icon_size=""` (beide seit r17605) sind optional. Die ausgewählten Werte werden mit dem angegebenen Trennzeichen (Standard: Semikolon, `;`) zusammengehängt und in das Merkmal geschrieben. Wenn ein Wert bereits gesetzt ist, wenn der Objektvorlagendialog geöffnet wird, wird `` versuchen, die entsprechenden Elemente in der Liste als ausgewählt zu markieren. Wenn der Wert nicht durch eine Kombination von Auswahlmöglichkeiten in der Liste dargestellt werden kann, dann wird die Liste deaktiviert, damit der Benutzer nicht versehentlich einen benutzerdefinierten Wert überschreiben kann. Im Gegensatz zum Element `` erwartet das ``-Element, dass die Liste der Werte, Beschreibungen usw. das angegebene Trennzeichen verwendet, d.h. standardmäßig müssen ein Semikolon verwendet werden. Mit `delimiter=","` kann aber z.B. auch ein Komma im verwendet werden.
::
Wird in `` und `` verwendet. Weitere Informationen siehe `short_descriptions=""`, [#short_description unten]. Die Attribute sind `value=""`, `display_value=""`, `short_description=""`, `icon=""` und `icon_size=""`.
::
Ein Kontrollkästchen, das der Benutzer an- oder abwählen oder als ungültig markieren kann. Das Attribut `key=""` ist obligatorisch. `text=""`, `default=""`, `match=""`, `value_on=""` , `value_off=""`, `disable_off=""`, `icon=""` und `icon_size=""` (beide seit r15437) sind optional.
\\
==== Schablonen ====
::
Zur Definition einer Schablone von Elementen zur späteren (wiederholten) Verwendung. Das Attribut `id=""` ist obligatorisch.
::
Zur Einbeziehung einer früher definierten Schablone. Das Attribut `ref=""` ist obligatorisch.
\\
=== Attribute ===
Die Attribute der Elemente haben die folgende Bedeutung:
name="a_name"::
Geben Sie einen Namen für ein Element an. Dieser Name wird in der grafischen Benutzeroberfläche verwendet, um die Objektvorlage anzuzeigen.
name_context="context"::
Übersetzungskontext für das Attribut name, um gleichlautende Wörter mit unterschiedlicher Bedeutung zu trennen (nicht erforderlich für dateiinterne Übersetzungen).
type="data_type"::
Wenn angegeben, funktionieren nur Objekte des angegebenen Typs mit dieser Objektvorlage. Kann `"node"`, `"way"`, `"closedway"`, `"multipolygon"`, `"relation"` oder eine durch Komma getrennte Kombination davon sein. Beachten Sie, dass `"multipolygon"` nicht in `"relation"` enthalten ist: Wenn die Voreinstellung also für Multipolygone und andere Relationstypen gelten soll, müssen Sie beides angeben: `"multipolygon,relation"`. Wird auch im ``-Element verwendet, um anzugeben, welche Objekttypen für ein bestimmtes Relationselement zulässig sind.
icon="iconname"::
Ein Name oder ein Link zu einem Symbolbild. Das Bild wird für die Anzeige in der Auswahlliste und beim Hinzufügen der Vorlage zur Symbolleiste verwendet. Bilder können auch in ``, ``, sowie in allen [#EntrySelectionBoxes Attributeingabe- und Auswahldialogboxen] verwendet werden (seit r17605, vorher waren es nur `` und ``). Es wird vor `` platziert. Das Symbol sollte eine quadratische Größe haben. Siehe [wikitr:/Styles#Iconhandling Bildbehandlung] wie Bilder angegeben werden können.
icon_size="a number"::
Die maximale Größe eines Icons in Bildpunkten. Wenn kein Wert angegeben wird, ist der Standardwert 16 für `` und die Standardgröße des Symbols für `` (in `` und ``).
key="some_key"::
Dies gibt das Merkmal an, welches durch den Eintrag verändert wird. Im Falle von `` ist es der Rollenname, der in einer Relation verwendet wird.
text="Ein Text"::
Die Beschreibung, die vor dem Bedienelement angezeigt wird (im Falle von `` nach dem Element und dem optionalen Bild). Wird auch für `