Aller au contenu principal

Référentiels / Vocabulaires

┌────────────────────────────────────────────┐
│ Reference systems / Vocabularies |
│--------------------------------------------│
│ Application Référentiels |
│--------------------------------------------│
│ ┌─────────────────┐ R1 |
│ │ User │ ┌───────────┐ |
│ │ Interface │ | voc1 │ │
│ │ │ <=> | voc2 | │
│ │ Choice list │ └───────────┘ │
│ │ - voc1 │ │
│ │ - voc2 │ R2 │
│ │ - voc3 │ ┌───────────┐ │
│ │ - voc4 │ | voc3 | │
│ │ │ <=> | voc4 │ |
│ └─────────────────┘ └───────────┘ │
└────────────────────────────────────────────┘

Introduction

Lors du projet Carto4CH, nous avons beaucoup réfléchi à la manière de maintenir des référentiels, ou de faire référence à des référentiels existants au niveau européen. Nous aurions souhaité les mettre en place, mais la tâche était trop complexe pour le peu de temps/énergie que nous avions.

Nous avons donc opté pour des listes internes à chaque serveur Carto4CH.

  • Les utilisateurs peuvent peupler ces listes, aidés par des propositions venant de ESCO ou Wikidata.
  • En utilisant l'interopérabilité entre les serveurs, il est possible de voir les listes du serveur A sur le serveur B.

C'est une solution acceptable pour un démonstrateur, mais pas pour une utilisation en production.

Dans cette page, nous proposons une future architecture pour mettre en place des référentiels (aussi appelés "vocabulaires") externes aux serveurs Carto4CH.

Rappel

Pour comprendre de quoi nous parlons, vous pouvez relire les prérequis de la documentation utilisateurice au sujet des vocabulaires.

Des référentiels internes aux référentiels externes

Référentiels internes

Pour le moment, chaque serveur possède ses propres listes.

┌──────────────────────────────────────────────────┐
│ Internal vocabularies |
│--------------------------------------------------│
│ Server A Server B |
│--------------------------------------------------│
│ ┌─────────────────┐ ┌─────────────────┐ |
│ │ User │ │ User │ |
│ │ Interface │ │ Interface │ |
│ │ │ <=> │ │ │
│ │ Choice list │ │ Choice list │ │
│ │ - voc1 │ │ - voc3 │ │
│ │ - voc2 │ │ - voc4 │ │
│ └─────────────────┘ └─────────────────┘ │
│ ^ ^ │
│ └── Interoperability ─┘ │
└──────────────────────────────────────────────────┘

Référentiels externes

Nous proposons de passer par des référentiels externes, qui seront gérés comme des communs par des communautés. Ils pourront être spécialisés dans un domaine, et être utilisés par n'importe quel serveur Carto4CH.

┌──────────────────────────────────────────────────┐
│ External vocabularies |
│--------------------------------------------------│
│ Server A Server B |
│--------------------------------------------------│
│ ┌─────────────────┐ ┌─────────────────┐ |
│ │ User │ │ User │ |
│ │ Interface │ │ Interface │ |
│ │ │ │ │ │
│ │ Choice list │ │ Choice list │ │
│ │ - voc1 │ │ - voc1 │ │
│ │ - voc2 │ │ - voc2 │ │
│ │ - voc3 │ │ - voc3 │ │
│ │ - voc4 │ │ - voc4 │ │
│ └─────────────────┘ └─────────────────┘ │
│ ^ \ / ^ │
│ | X | │
│ | / \ | │
│ ┌─────────────────┐ ┌─────────────────┐ |
│ │ Vocab 1 │ │ Vocab 2 │ |
│ │ - voc1 │ │ - voc3 │ |
│ │ - voc2 │ │ - voc4 │ │
│ └─────────────────┘ └─────────────────┘ │
└──────────────────────────────────────────────────┘

Technologie / standards

Ces référentiels pourront d'ailleurs être des thésaurus implémentés par des serveurs SOLID, utilisant par exemple l'ontologie SKOS, comme celui que nous avons utilisé dans le Tutoriel SOLID et le Lexique de Carto4CH.