[[TranslatedPages(revision=198)]]
[[PageOutline(2-10,Table des Matières)]]
''Si vous souhaitez connaître les étapes d'installation des préréglages, consultez la section Enregistrement des [wikitr:/Help/Preferences/TaggingPresetPreference Modèles d’attributs] [[JOSMImage(dialogs/propertiesdialog)]] dans les [wikitr:/Help/Action/Preferences Préférences]'' [[JOSMImage(preference)]] \\
''Si vous voulez utiliser des préréglages ou si vous avez besoin d'une référence complète sur les préréglages, voir les [wikitr:/Presets Préréglages]''
----
= Modèles d’attributs =
JOSM prend en charge les modèles d'attributs distribués. Il s'agit d'un fichier de configuration XML qui décrit une interface graphique permettant de saisir des attributs (ou des propriétés, des annotations, parfois appelés éléments cartographiques).
Les préréglages peuvent être placés n'importe où sur le Web ou dans le système de fichiers local de l'utilisateur. JOSM peut être configuré pour utiliser des préréglages personnalisés locaux ou distants.
== Développer un nouveau préréglage ==
La description des modèles d'attributs est dans un format XML très simple. Voir les détails ci-dessous [#XML ci-dessous].
Voir le fichier **[source:/trunk/resources/data/defaultpresets.xml defaultpresets.xml]** pour un exemple couvrant la plupart des possibilités énumérées ci-dessous.
Exemple:
[[Image(TaggingPresets:Change 1 object.png,right,link=,margin-left=15)]]
{{{
#!preset
}}}
\\
== Description du format XML ==#XML
Le schéma XSD complet est disponible dans l'espace de noms URI (https://josm.openstreetmap.de/tagging-preset-1.0) ainsi que dans le [source:/trunk/resources/data/tagging-preset.xsd dépôt des sources].
=== Attributs ===
==== Préambule du document ====
::
Doit être l'attribut principal du fichier. Prend en charge les attributs suivants :
* **xmlns="http://josm.openstreetmap.de/tagging-preset-1.0"**
* **author** - le nom de l'auteur du préréglage
* **version** - le numéro de version du fichier. Pour le réglage automatique de la version des préréglages gérés dans ce wiki, vous devez utiliser deux variables internes : `[[revision]]` (le numéro de la version en développement de la page wiki) et `[[date]]` (la date de la dernière modification), par exemple `version="1.[[revision]]_[[date]]"`.
* **description** (i18n) - description de ce que contient le fichier
* **shortdescription** (i18n) - une très courte description générale, c'est-à-dire le "nom" du préréglage.
* **link** (i18n) - lien internet pour plus de détails (facultatif)
* **icon** - icône pour l'ensemble du préréglage
* **baselanguage** - si la langue de base n'est pas l'anglais, spécifiez-la ici (l'utilisation de textes du préréglage non anglais empêchera la traduction automatique, une fois qu'elle sera mise en œuvre) (#11392))
(i18n) signifie que les valeurs peuvent également être localisées (par ex. `de.description`).
\\
==== Commentaires ====
::
Le document peut contenir des commentaires intégrés.
\\
==== Création d'un groupe de préréglages ====
::
Utilisé pour regrouper les éléments dans les sous-menus. `name=""` est obligatoire, `icon=""` est un attribut facultatif.
::
Chaque élément (item) est un ensemble d'annotations à sélectionner. `name=""` est obligatoire, `type=""` et `preset_name_label=""` sont recommandés, `icon=""`, `name_template=""` et `match_expression=""` sont des attributs facultatifs.
::
Insére un séparateur de ligne dans le menu.
\\
==== Configuration des fenêtres de préréglage ====
::
Les libellés sont des textes statiques à afficher. `text=""` est un attribut obligatoire, `icon=""` et `icon_size=""` sont facultatifs.
::
Ajoute un espace (c'est-à-dire une nouvelle ligne).
::
Utilisé pour regrouper certains éléments facultatifs d'un item. L'attribut `text=""` est facultatif. S'il est utilisé sans `text=""`, il est équivalent à ``
::
Ajoute une ligne de séparation horizontale entre les items.
::
Indique un lien Web pour cette fonctionnalité ou pour tout autre élément utile. L'attribut `wiki=""` (faisant référence à une page wiki OSM, par exemple `"Tag:leisure=park"`) ou `href=""` (URL complète) est requis. Lorsque l'attribut `wiki=""` est utilisé, le lien pointe vers la page wiki de la langue choisie par JOSM. Si elle n'existe pas, la page anglaise est affichée. Si vous utilisez `wiki=""`, la page wiki d'OSM ne doit pas être codée en URL, par exemple : ne pas mettre `"Tag:leisure%3Dpark"` mais plutôt `"Tag:leisure=park"`.
::
Pour regrouper les contrôles. L'attribut `columns=""` est obligatoire.
::
Ceci est nécessaire autour de `` et ajoute le titre ("Available roles role count elements") au tableau qui est généré par plusieurs ``.
::
Pour spécifier les rôles possibles des membres dans les relations. L'attribut `key=""` est obligatoire, `text=""`, `requisite=""`, `count=""`, `type=""`, `member_expression=""` et `regexp=""` sont facultatifs.
::
Ajoute un lien vers un autre préréglage avec une étiquette en haut. L'attribut `preset_name=""` est obligatoire, `text=""` pour remplacer l'étiquette (la valeur par défaut est `"Edit also …"`) et `text_context=""` sont facultatifs. Une séquence de `` sans `text=""` ou avec une valeur `text=""` identique est regroupée sous une étiquette. \\
**Faites attention** aux préréglages ayant un **`name=""`** identique, car il n'est pas possible de prévoir vers quel préréglage le lien mènera, voir #12716. \\
Le fait d'avoir le même attribut dans les deux préréglages ne fonctionne pas, voir #18992. \\
L'utilisation de `` dans les préréglages ouverts depuis l'[wikitr:/Help/Dialog/RelationEditor Éditeur de relations] produit des exceptions, voir #20044.
\\
==== Définir une paire clé-valeur fixe ====
::
Cet attribut définira toujours une clé à une valeur spécifique. `key=""` est obligatoire et si `value=""` est présent, la clé sera définie. Si l'attribut `value=""` est omis, la clé est supprimée. L'attribut `match=""` est facultatif.
\\
==== Fenêtres de saisie et de sélection d'attributs ====#EntrySelectionBoxes
::
Un champ d'édition de texte pour entrer n'importe quelle chaîne arbitraire de l'utilisateur. `key=""` est obligatoire, `text=""`, `default=""`, `use_last_as_default=""`, `auto_increment=""`, `length=""`, `alternative_autocomplete_keys=""`, `match=""`, `icon=""` et `icon_size=""` (les deux depuis r17605) sont facultatifs.
::
Affiche une boîte combo à choix multiples. `key=""` et `values=""` sont obligatoires, `text=""`, `default=""`, `editable=""`, `delimiter=""`, `values_from=""`, `display_values=""`, `short_descriptions=""`, `use_last_as_default=""`, `values_searchable=""`, `length=""`, `values_no_i18n=""`, `values_sort=""`, `match=""`, `icon=""` et `icon_size=""` (les deux depuis r17605) sont facultatifs.\\
Si la valeur de `editable=""` est `true` (par défaut), les combo boxes peuvent être éditées comme s'il s'agissait de champs texte (en plus du menu déroulant). Les boîtes combo non modifiables ne peuvent contenir qu'une des valeurs spécifiées.\\
Si la clé est `colour` ou `colour:*` ou `*:colour`, a un aperçu et un sélecteur de couleur sont ajoutés à droite (voir #8352).
[=#multiselect]
::
Affiche une liste dans laquelle on peut choisir zéro ou plusieurs éléments. `key=""` et `values=""` sont obligatoires, et `text=""`, `default=""`, `delimiter=""`, `values_from=""`, `rows=""`, `display_values=""`, `short_descriptions=""`, `use_last_as_default=""`, `values_searchable=""`, `values_no_i18n=""`, `values_sort=""`, `match=""`, `icon=""` et `icon_size=""` (les deux depuis r17605) sont optionnels. Les valeurs sélectionnées seront concaténées avec le délimiteur spécifié (par défaut : point-virgule, `;`) et écrites dans la valeur de l'attribut. Si une valeur d'attribut a déjà été définie lorsque la fenêtre de préréglage est ouverte, le `` tentera de marquer les éléments appropriés de la liste comme étant sélectionnés. Si la valeur de l'attribut ne peut pas être représentée par une combinaison de choix dans la liste, alors la liste sera désactivée afin que l'utilisateur ne puisse pas accidentellement écraser une valeur personnalisée. Contrairement à l'élément `` l'élément `` attend de la liste des valeurs, des descriptions, etc. qu'elle utilise le délimiteur spécifié, c'est-à-dire que par défaut, vous devrez utiliser un point-virgule. Vous pouvez spécifier `delimiter=","` mais alors une virgule sera également utilisée dans la valeur de l'attribut.
::
Utilisé dans `` et ``. Pour plus d'informations, voir `short_descriptions=""`, [#short_description ci-dessous]. Les attributs sont `value=""`, `display_value=""`, `short_description=""`, `icon=""` et `icon_size=""`.
::
Une case à cocher que l'utilisateur peut sélectionner, désélectionner ou définir comme non définie. L'attribut `key=""` est obligatoire. Les attributs `text=""`, `default=""`, `match=""`, `value_on=""` , `value_off=""`, `disable_off=""`, `icon=""` et `icon_size=""` ( les deux depuis r15437) sont facultatifs.
\\
==== Modèles (Templates) ====
::
Pour définir un modèle d'éléments pour une utilisation (répétée) ultérieure. L'attribut `id=""` est obligatoire.
::
Pour inclure un modèle défini précédemment. L'attribut `ref=""` est obligatoire.
\\
=== Attributs ===
Les attributs des balises (tags) ont la signification suivante :
name="a_name"::
Spécifiez un nom pour un élément. Ce nom sera utilisé dans l'interface graphique pour afficher le modèle d'attributs.
name_context="context"::
Contexte de traduction pour l'attribut de nom afin de séparer les mots égaux ayant une signification différente (non requis pour les traductions en fichier).
type="data_type"::
Lorsqu'il est spécifié, seuls les objets du type donné fonctionneront avec ce modèle d'attributs. Peut être `"node"`, `"way"`, `"closedway"`, `"multipolygon"`, `"relation"` ou toute combinaison séparée par des virgules. Notez que `"multipolygon"` n'est pas inclus dans `"relation"`, donc si le préréglage doit s'appliquer aux multipolygones et aux autres types de relation, vous devez spécifier les deux : `"multipolygon,relation"`. . Également utilisé dans l'attribut `` pour spécifier les types d'objets autorisés pour un membre de relation spécifique.
icon="iconname"::
Un nom ou un lien vers une icône. L'image sera utilisée comme icône à afficher dans la liste de sélection et lors de l'ajout du préréglage à la barre d'outils. Les icônes peuvent également être utilisées dans ``, ``, plus toutes les [#EntrySelectionBoxes Fenêtres de saisie et de sélection d'attributs] (depuis la r17605, avant c'était seulement `` et ``). Elle est placée devant `` L'icône doit être de taille quadratique. Voir [wikitr:/Styles#Iconhandling Gestion des icônes] pour savoir comment les icônes peuvent être spécifiées.
icon_size="a number"::
La taille maximale d'une icône en px. Si aucune valeur n'est donnée, la valeur par défaut est 16 pour `` et la taille par défaut de l'icône pour `` (dans `` et ``).
key="some_key"::
Ceci spécifie la clé de la propriété qui sera modifiée par l'élément. Dans le cas de `` c'est le nom du rôle utilisé dans une relation.
text="Any text"::
La description, qui sera affichée avant l'élément * **(gui element)**, (dans le cas de `` après l'élément **gui element** et l'icône optionnelle). Également utilisé pour `