Territoires, utilisation du plugin

L’objectif du plugin est de fournir un nouvel objet éditorial couvrant l’ensemble des zones géographiques du continent à la subdivision minimale d’un pays. De fait, ce plugin pourrait à terme remplacer les plugins Pays, Continents, COG et Géographie en fournissant un objet unique et servir de pivot à d’autres plugins de géographie comme GIS, Contours ou Cartes Choroplèthes.

Présentation

L’objectif du plugin est de fournir un nouvel objet éditorial couvrant l’ensemble des zones géographiques du continent à la subdivision minimale d’un pays.

Le plugin fournit, les élément standard d’un objet éditorial « territoire », comme son interface privée (édition, liste, configuration) et une interface de peuplement des données à partir de l’API REST du plugin Nomenclatures. Il propose également un mécanisme d’extension des données attachées à chaque territoire.

Installation

Le plugin s’installe comme n’importe quel plugin SPIP. Il nécessite uniquement le plugin Saisies pour formulaires.

Concepts

Les types de territoire

De façon à retrouver quelque peu la logique actuelle des objets géographiques et de coller à la standardisation, les objets « territoire » sont classés en quatre groupes ou types, à savoir :

  • Les zones, qui délimitent des zones supranationales par des regroupements de pays en continents, sous-continents et autres régions conformément à la norme UN M49. Le type est zone.
  • les pays, que l’on peut considérer comme le type pivot des territoires et dont la liste est issue de la norme ISO 3166-1. Le type associé aux pays est country ;
  • les subdivisions d’un pays, qui en organisent, conformément à la norme ISO 3166-2, la structure administrative à l’instar des länder en Allemagne ou des régions et départements en France. Le type associé est subdivision.
  • les infra-subdivisions d’un pays, qui raffinent les subdivisions standard mais ne font pas partie de la norme ISO 3166-2. Elles possèdent une identification spécifique qui varie d’un pays à un autre. C’est le cas, par exemple, des arrondissements, cantons et communes de France dont l’identifiant est le code INSEE ou des comtés américains identifiés par le code FIPS. Le type associé est infrasubdivision.

Le choix de scinder les subdivisions peut paraitre arbitraire mais il est dicté par le fait de distinguer les identifications internationales des identifications nationales.

Les catégories de territoire

La norme ISO 3166-2 attribue un code à chaque subdivision administrative d’un pays et identifie la catégorie de la subdivision : le land en Allemagne, la région, le département, la collectivité territoriale en France, le canton en Suisse, etc. Cette typologie est essentielle pour comprendre l’organisation administrative des pays.

Le plugin Territoires étend cette notion de catégorie aux autres types de territoire pour distinguer les continents des autres régions du monde (sous-continents par exemple), les pays des zones assimilées (non utilisé pour l’instant) et les infra-subdivisions entre elles.

L’identification des territoires

Codification primaire

Comme tout objet éditorial, un territoire possède un id unique. Néanmoins, il est nécessaire d’utiliser un identifiant unique et stable pour désigner chaque territoire. Le plugin utilise pour cela les normes en vigueur et propose un champ « iso_territoire » qui contient l’identifiant unique choisi :

  • Le code UN M49 à trois caractères numériques pour les zones du monde (extension du code numérique 3166-1 des pays) ;
  • Le code ISO 3166-1 alpha2 pour les pays ;
  • Le code ISO 3166-2 pour les subdivisions composé du code alpha2 du pays, un tiret et d’un code à trois caractères alphanumériques ;
  • Le code spécifique national du pays pour les infra-subdivisions précédé par le code ISO 3166-1 alpha2 du pays (même principe que la norme ISO 3166-2).

L’hétérogénéité de cet identifiant n’est pas un problème car seule son unicité est importante.

Codifications alternatives

Si le plugin a fait un choix d’identifiant, il n’en reste pas moins que la plupart des territoires possèdent d’autres identifiants standardisés soit au niveau mondial soit au niveau national.
Par exemple, le pays possède 2 autres codes au sens de la norme ISO 3166-1, à savoir, le code alpha3 et le code numérique à trois chiffres.

Pour les subdivisions, leur caractère national fait qu’il existe en parallèle des codes nationaux comme celui de l’INSEE (COG) ou des codes communautaires comme les NUTS de l’union européenne.

Étant donné que ces codifications alternatives sont nombreuses et variées, elles ne sont pas intégrées à l’objet lui-même mais sont accessibles au travers d’une table complémentaire nommée spip_territoires_extras si l’utilisateur le souhaite.

La hiérarchisation des territoires

Parenté directe

Au sein de chaque type, l’organisation des territoires est hiérarchique (sauf pour les pays bien entendu). L’ensemble des objets territoire tout type confondu forme aussi une hiérarchie de l’objet « monde » à la plus petite subdivision ou infra-subdivision d’un pays.

Raccourcis d’appartenance

Pour simplifier certaines requêtes et aussi conserver un mode d’interrogation existant dans les plugins de géographie actuels, la parenté directe est enrichie de liens d’appartenance qui redondent l’information de parenté mais évitent de parcourir toute l’arborescence.

Chaque objet territoire, si cela a un sens, possède donc un lien direct avec son pays d’appartenance ou son continent d’appartenance. Cela est particulièrement utile aux subdivisions ou infra-subdivisions liées à un pays et aux pays liés à un continent.

La description des territoires

Les normes ISO 3166 ou UN M49 fournissent à la fois un code d’identification unique du territoire mais aussi un nom normalisé. Ce nom est intégré à l’objet territoire dans le champ « iso_titre ».

Néanmoins, ce nom n’est pas utilisé comme titre de l’objet (au sens SPIP). Pour cela on utilise le nom d’usage qui parfois coïncide avec le nom de la norme mais parfois pas. C’est souvent le cas en français ou le nom normalisé possède souvent l’article entre parenthèses, article que l’on préfère souvent omettre dans les usages. Ainsi, l’objet territoire possède un champ « nom_usage » qui fait office de titre de l’objet. Les noms sont toujours des chaines multi-langues autorisant toutes les traductions supportées par SPIP.

Il est possible pour chaque objet territoire de saisir un descriptif qui pourra être affiché ensuite en regard de l’objet. Ce texte explicatif est le seul champ modifiable manuellement. Il est stocké comme une chaine multi-langues dans le champ « descriptif » de l’objet territoire.

Comme tout objet éditorial le territoire peut être agrémenté d’un logo entièrement géré par l’API SPIP correspondante.

Par défaut, l’objet territoire ne propose aucune caractéristique géographique comme la population, la densité, les contours géographiques, etc. Par contre, comme pour les codes alternatifs, le plugin propose une gestion agnostique des caractéristiques par une table de liens nommée spip_territoires_extras.

L’interface utilisateur

L’interface utilisateur fournit par le plugin Territoires ne concerne que l’espace privé. Elle permet, au travers de plusieurs pages d’assurer les fonctions d’édition, de consultation, de peuplement et de configuration. Pour simplifier la navigation, ces pages sont accessibles par un menu de navigation unique.

Page liste des territoires

La page territoires affiche, comme tous les objets SPIP, la liste des territoires. Par défaut, tous les territoires sont listés et l’onglet « Tous » est activé. L’utilisateur a la possibilité d’afficher la liste des territoires pour un type donné via les onglets Zones, Pays, Subdivisions et Infra-subdivisions.

Il est aussi possible d’identifier la liste des territoires édités via un filtre de second niveau.

Liste des territoires
Liste des territoires

Page peuplement des territoires

La page peupler_territoires affiche, le formulaire de chargement ou de vidage d’un ensemble de territoires. Le formulaire #FORMULAIRE_PEUPLER_TERRITOIRES propose de choisir l’action (charger ou vider), les types de territoire à charger sachant que les subdivisions ou infra-subdivisions sont proposées par pays afin d’éviter de charger trop de données en une fois.

Enfin, le formulaire propose des options de chargement pour ajouter les caractéristiques additionnelles ou les codes alternatifs.

Formulaire de peuplement
Formulaire de peuplement

Page configuration du plugin

La configuration du plugin proprement dite se limite au choix des types d’objet pouvant se lier à un ou plusieurs territoires (page configurer_territoires).

Configuration
Configuration

Page d’un objet territoire

La page territoire affiche la fiche objet de chaque territoire. Comme tous les objets SPIP elle est composée d’une zone centrale dans laquelle est affichée le titre, le descriptif du territoire et la hiérarchie des territoires ascendants si elle existe. Si des données additionnelles existent et ont été chargées pour le territoire choisi, elles sont affichées dans un tableau nommé « Caractéristiques » via le pipeline affiche_milieu.

Dans le prolongement de la fiche centrale le plugin affiche la liste des territoires enfants (si ils existent) via le pipeline affiche_enfants et le squelette prive/objets/contenu/territoire-enfants.html.

La boite d’information visualise outre l’id du territoire, son identifiant normalisé (champ « iso_territoire »), son type et sa catégorie. Elle est suivie par le bloc logo.

Enfin, via le pipeline affiche_gauche, le plugin affiche les codes alternatifs du territoire.

Fiche objet d'un territoire
Fiche objet d’un territoire

Plugins connexes

Le plugin Territoires tirent l’ensemble de ses données du plugin Nomenclatures (préfixe isocode) qui offre une API REST pour certain nombre de données normalisées de type géographique ou linguistique. Pour ajouter des territoires non encore disponibles dans le plugin il faut en fait les rendre disponibles dans le plugin Nomenclatures. De fait, ces territoires seront automatiquement détectés par le plugin Territoires et proposés au chargement.

Le plugin Territoires sert aussi de base au plugin Contours qui propose d’ajouter des contours GeoJSON au territoires. Le plugin Territoires accueille ainsi le formulaire de chargement de Contours dans sa page de peuplement, le contour lui-même étant affiché dans la fiche objet du territoire comme un objet GIS. Les contours sont aussi mis à disposition au travers de l’API REST de Nomenclatures.

Évolutions à prévoir pour le plugin

  • Mise en place du nom d’usage de façon systématique (à faire dans le plugin Nomenclatures)
  • Ajout des traductions des noms d’usage voire des titres normalisés (à faire dans le plugin Nomenclatures)
  • Ajouter des ensembles de subdivisions provenant de la norme ISO 3166 et des infra-subdivisions.

Pour aller plus loin avec la compréhension du plugin, un guide de conception en PDF est fourni avec le code.

updated on 18 October 2020

Discussion

Aucune discussion

Ajouter un commentaire

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom