FR:Nœud

From OpenStreetMap Wiki
Jump to navigation Jump to search

Le nœud est l’élément de base et la pierre angulaire de toute la structure d’OSM. Les nœuds sont définis par une latitude et une longitude (un unique point géospatial). Optionnellement, la troisième dimension, son altitude ou elevation en anglais, peut être indiquée à l’aide de l’attribut ele=*.

Les nœuds sont nécessaires à la définition d'un "chemin" (voir ci-dessous), mais un nœud peut aussi être un point isolé représentant par exemple l'emplacement d'une cabine téléphonique, d'un commerce, d'un nom ou de tout autre point d'intérêt (POI). Un point isolé doit posséder au moins un tag comme amenity=telephone dans l'exemple de notre cabine téléphonique.

Les nœuds servant à définir un chemin n'ont généralement pas de tags associés, ils n'existent que pour définir le chemin sans que cela soit une règle absolue. Par exemple, un noeud appartenant à un chemin tagué railway=rail définissant la ligne de chemin de fer peut être tagué railway=station pour définir une gare ferroviaire.

Enfin, un nœud peut faire partie d'une relation.

Il y a actuellement (août 2023) plus de 8,5 milliards de nœuds dans la base.

nœud est l’icône représentant un nœud dans ce wiki.

Propriétés d’un nœud

Propriété Type de propriété Type de valeur Description
id Identifiant obligatoire Entier,
>= 1
Identifiant unique du nœud (attention, les identifiants des nœuds sont propres aux nœuds, un chemin peut avoir le même identifiant qu’un nœud). Les éditeurs ont tendance à utiliser des valeurs négatives ou nulles pour les nœuds qui n’ont pas encore été enregistrés sur le serveur. Sur le serveur, les identifiants des nœuds sont persistants ce qui signifie que l’identifiant reste le même quand des données sont modifiés (latitude, longitude, attributs). Les identifiants des nœuds supprimés ne doivent pas être ré-utilisés sauf en cas d’annulation de suppression pour restaurer ce nœud nécessaire.
Remarque : Le stockage des identifiants uniques sur 32 bits n’est plus suffisant pour les nœuds (car la base de données mondiale contient maintenant beaucoup plus que 2 milliards de nœuds et le signe est significatif dans le protocole de modification de la base de données) : le stockage interne dans les applications avec des entiers « longs » sur 64 bits est devenu la norme si ces applications ne veulent pas conserver les nombres sous forme de chaîne de caractères en chiffres décimaux.
version Identifiant obligatoire Entier,
>= 1
Numéro de version de ce noeud. Ce numéro est généré par le serveur et incrémenté à chaque modification. Lors de la création ou la modification d’un nœud, les clients indiquent au serveur n’indiquent aucune version, le serveur fournira le numéro de version en retour une fois le nœud créé. Dans les requêtes normales de lecture de la base de données, on n’obtient que la dernière version de ce nœud mais pour modifier ou supprimer un nœud il est nécessaire de fournir ce dernier numéro de version connu (afin de détecter les conflits de modification). La suppression normale d’un nœud crée une nouvelle version avec l’état supprimé dans son historique. Il est possible de consulter l’historique du nœud pour obtenir la liste ordonnées des versions disponibles (certaines versions peuvent être masquées pour des raisons légales par une action de rédaction par l’administrateur de la base de données). Il est possible de spécifier ce numéro de version pour lire les attributs modifiables ci-dessous correspondant à cette version.
visible Métadonnée obligatoire Booléen,
false ou true
Les nœuds ne peuvent pas être créés comme invisibles, mais ils peuvent être modifiés (« rédigés ») par un administrateur de la base de données pour le devenir afin de masquer une ou plusieurs versions dans l’historique (cette « rédaction » ne modifie aucune des autres propriétés et ne crée pas de nouvelle version de l’objet : cette propriété ne fait pas partie de l’historique du nœud elle s’applique à une version précise). Les administrateurs de la base de données peuvent lire le contenu des versions masquées et inverser à nouveau leur visibilité. Les autres utilisateurs ne peuvent lire que les versions visibles (y compris celles de l’historique). Il est possible que des versions invisibles soient définitivement purgées de la base (cette version du nœud ne pourra alors pas être restaurée), si aucun autre objet conservé (visible ou invisible) en dépend.
changeset Métadonnée informative Entier,
>= 1
Numéro du « groupe de modifications » ayant créé cette version du nœud. Un même groupe de modifications peut avoir créé plusieurs versions (non nécessairement successive car d’autres groupes de modifications concurrents peuvent avoir créé des versions intermédiaires). Historiquement, la base de données ne comportait pas la notion de groupes de modifications et ceux-ci ont été reconstitués de façon approximative en regroupant les modifications faites par un même utilisateur dans un intervalle de temps limité. Bien que non mentionné dans les propriétés obtenues en interrogeant un nœud identifié, les groupes de modifications peuvent être interrogés par cet identifiant afin de lire toutes ses métadonnées. Note : un groupe de modification ne comporte aucun historique, il ne contient que l'identification d’un utilisateur, un intervalle de dates contenant toutes les versions de tous les éléments créés, modifiés ou supprimés, et quelques attributs optionnels dont le commentaire de modification ou l’identification du logiciel utilisé, et la liste des éléments concernés avec leur type primitif (par exemple le type « nœud »), leur identifiant unique et leur numéro de version enregistré)
user Métadonnée informative Chaîne de caractères Cette propriété n’est plus propre au nœud, mais identifie visuellement le nom actuel de l’utilisateur ayant créé le groupe de modifications. Dans certains cas, ce nom peut être masqué (pour les utilisateurs ayant demandé à ne plus être identifiable et ayant supprimé leur compte utilisateur) et sera vierge, ou pourra être modifié (l’historique des noms d’un même utilisateur, comme aussi ses données personnelles associées à son compte et non publiées par lui, sont des données privées, non accessibles aux utilisateurs autres que l’administrateur de la base de données). Ce nom n’est pas nécessairement le même que sur le wiki OpenStreetMap ou dans les forums d’aide ; il peut être un pseudonyme n’ayant rien de commun avec son identité réelle; il peut être le nom d’utilisateur d’un compte de bot utilisé spécifiquement pour les importations de données en masse, conformément aux termes d’utilisation acceptés par tous les contributeurs (et séparément des comptes utilisateur pour leurs modifications non automatisées effectuées avec des éditeurs interactifs).
uid Métadonnée informative Entier,
>= 1
Identifiant unique de l’utilisateur ayant créé la version de ce nœud. Cette propriété n’est plus propre au nœud mais identifie l’utilisateur ayant créé le groupe de modifications. Il est conservé même si l’utilisateur a eu son nom modifié ou masqué. Toutefois l’administrateur peut décider d’anonymiser aussi cet identifiant en le remplaçant par un autre lorsque l’utilisateur est devenu anonyme (ou a été banni et seules certaines de ses modifications ont été conservées).
timestamp Métadonnée informative Date au format ISO 8601 Cet horodatage n’est pas modifiable, il correspond à la date et l’heure UTC (temps universel coordonné) où la version de l’objet a été enregistré dans la base de données. Plusieurs versions successives d’un même nœud peuvent exceptionnellement être enregistrées avec le même horodatage visible (et pas nécessairement non plus dans le même groupe de modifications). Cet horodatage est compris dans l’intervalle de date du groupe de modification ayant créé cette version du noeud.
lat Donnée obligatoire Flottant
>= −90 et <= 90,
7 décimales
Latitude de la coordonnée du nœud en degrés décimaux dans le système WGS84. Exemple: 48.8533249
Remarque : certaines applications affichant une projection cartographique de type Mercator n’acceptent pas de valeurs en dessous et au dessus de ±85°.
Les 7 décimales de latitude permettent une précision de plus ou moins 1 centimètre environ, les logiciels peuvent effectuer leurs calcul ou stocker les données avec des nombres flottants en format IEEE binaire « double précision » standard sur 64 bits (la « simple précision » sur 32 bits n’est pas suffisante) ; dans les éditeurs affichant ou permettant de saisir des coordonnées sexagésimales (en degrés, minutes, secondes et fractions décimales de secondes), cela correspond à une précision de plus ou moins 1 centième de seconde d’arc environ.
lon Donnée obligatoire Flottant
>= −180 et <= 180,
7 décimales
Longitude de la coordonnée du nœud en degrés décimaux dans le système WGS84. Exemple: 2.3488596
Remarque : la base de données ne permet pas de créer des objets franchissant l’antiméridien à ±180°: il est nécessaire de les couper en deux parties, mais il est permis de positionner des nœuds et des chemins le long des deux côtés de l’antiméridien (qui en fait se superposent exactement).
Les 7 décimales de longitude permettent une précision de plus ou moins 1 centimètre environ sur l’équateur (aux pôles, cette précision n’est pas géométriquement signifiante), les logiciels peuvent effectuer leurs calcul ou stocker les données avec des nombres flottants en format IEEE binaire « double précision » standard sur 64 bits (la « simple précision » sur 32 bits n’est pas suffisante) ; dans les éditeurs affichant ou permettant de saisir des coordonnées sexagésimales (en degrés, minutes, secondes et fractions décimales de secondes), cela correspond à une précision de plus ou moins 1 centième de seconde d’arc environ.
Attributs
(tags)
Données optionnelles Ensemble de paires clé=valeur,
avec unicité des clés.
Le serveur de base de données ne garantit aucun ordre précis des clés d’attributs, leur ordre n’est pas significatif mais l’unicité des clés au sein d’une même version d’un nœud est nécessaire et suffisante.
Clés et valeurs sont des chaînes de caractères Unicode (codées en UTF-8; historiquement elles ont été codées en ISO 8859-1 par les anciens éditeurs, mais ce ne devrait plus être le cas avec les éditeurs actuellement acceptés).
Pour faciliter l’utilisation de la base de données et la validité syntaxique des requêtes, les clés ne devraient contenir aucune espace (le symbole de soulignement _ lui est préféré), ni signe égal, ni guillemets " et apostrophes ' ASCII : les clés normalement utilisées sont composées de lettres (dont la casse est significative), ou de chiffres, ou comporter certains signes de ponctuation (le soulignement entre deux mots, le tiret, et les deux-points) ; les espaces dans les valeurs devraient être compressés (aucune espace en tête ni en fin de valeur).
Les clés et valeurs sont préférablement nommées en anglais britannique, sauf dans les cas nécessitant une autre langue ou pour les termes intraduisibles.
Les clés utilisées devraient être courtes, lisibles, faciles à saisir et documentées sur ce wiki. Les valeurs sont limitées en taille à moins de 255 octets (en codage UTF-8).
Voir FR:Map Features pour les recommandations concernant l’utilisation des attributs.

A ces données s’ajoutent également des métadonnées concernant l’historique de leur modification, version par version (il peut exister plusieurs versions du même nœud dans un même groupe de modification ; éventuellement même avec le même horodatage visible si ces deux versions se succèdent dans la même seconde, ce qui devrait être rarissime) : cet historique pourra être consulté séparément et listera le nœud dans ses différentes versions successives dans un intervalle de temps ou de numéros de version donné.

Exemple de représentation d’un nœud dans le schéma XML de données OpenStreetMap

  <node id="191031796" lat="48.8533249" lon="2.3488596" version="11" changeset="7656318" user="Barty" uid="12531" visible="true" timestamp="2011-03-24T15:28:16Z">
    <tag k="name" v="Point zéro des routes de France"/>
    <tag k="name:sk" v="Nulový kilometrovník francúzskych ciest"/>
    <tag k="tourism" v="attraction"/>
    <tag k="wikipedia:fr" v="Point zéro des routes de France"/>
    <tag k="wikipedia:ru" v="Нулевой километр (Франция)"/>
  </node>

La base de données peut également fournir ces mêmes données (et métadonnées) dans d’autres formats, par exemple JSON, ou dans les fichiers de sauvegarde téléchargeables (dump).

Cas spéciaux