Comment créer et conserver des liens logiques avec des système tiers grâce aux Codes dans Chouette?
Quand un utilisateur importe des données, Chouette est en mesure de collecter tous les identifiants que ce soit en GTFS (les attributs avec *_id) ou en NeTEx (identifiants et Alternate Identifier).
Ces identifiants sont des données stratégiques pour l’information voyageur, car ils permettent de différencier dans la chaîne de production de l’offre de transport des éléments semblables.
Cependant, conserver uniquement les identifiants des producteurs de données n’est pas suffisant dans de nombreux cas. Les systèmes s’alimentant sur le référentiel théorique peuvent utiliser un identifiant proche ou complètement différent et il faut donc trouver une solution pour faire le lien entre l’identifiant d’origine et l’identifiant interne de chaque système.
Chouette SaaS permet de créer et conserver ces liens logiques en utilisant plusieurs identifiants nommés Codes.
La conservation et transmission de ces identifiants ou codes selon le format est différente :
GTFS : Contraint par le format à la transmission d’un identifiant par objet
NeTEx : Transmission possible de tous les identifiants portés par un objet
Cet enrichissement est rendu possible par l’introduction d’un nouveau concept : un espace de Codes. Celui-ci permet de conserver tous les codes dans un espace propre et isolé afin de conserver et alimenter un ou des consommateurs dédiés. On peut très bien imaginer par exemple dans un référentiel théorique créer des espaces de code pour :
la billettique
le calculateur d’itinéraire
l’open data
le temps réel
etc…
L’utilisation des codes permet donc de représenter à un consommateur une facette des données transport qu’il est à même de comprendre et d’intégrer dans son propre système au fil du temps.
La génération intelligente et automatisée de ces codes est possible via de nombreuses instructions se basant sur des uuid, des séquences, des informations contenues dans l’offre, etc…
Création de codes
Avant de créer un code, l’utilisateur doit s’assurer que des espaces de codes sont créés au niveau du Groupe de Travail :
Pour en savoir plus sur les espaces de codes, consultez la page https://enroute.atlassian.net/wiki/spaces/PUBLICFR/pages/1944682499.
Dans Chouette, il est possible de créer manuellement un code sur chacun des modèles. Dans l’édition d’un modèle, il suffit simplement de sélectionner un espace de code et indiquer le code souhaité.
Il est également possible de créer des codes de manière automatique grâce aux jeux d’instructions :
Quelques exemples sont disponibles sur cette page : https://enroute.atlassian.net/wiki/spaces/PUBLICFR/pages/3003219975
Publication des données avec des codes
Chouette peut utiliser les codes d’un espace de code pour publier les données en NeTEx ou en GTFS en sélectionnant l’espace de code souhaité dans les paramètres :
Quand un utilisateur publie ses données :
tous les modèles possédant un code dans l'espace de code sélectionné vont utiliser ce code comme identifiant
tous les modèles ne possédant pas un code dans l'espace de code sélectionné vont utiliser par défaut le numéro d'enregistrement ou le code "external"
pour le format NeTEx, l’ensemble des codes seront visibles dans les balises KeyValue de type ALTERNATE_IDENTIFIER
<keyList>
<KeyValue typeOfKey="ALTERNATE_IDENTIFIER">
<Key>B22</Key>
<Value>3c932b84-d8d2-47b2-b171-93b8f096bbd0</Value>
</KeyValue>
<KeyValue typeOfKey="ALTERNATE_IDENTIFIER">
<Key>Qommute</Key>
<Value>34ee69d1-77a4-471b-b41d-efdce829b845</Value>
</KeyValue>
<KeyValue typeOfKey="ALTERNATE_IDENTIFIER">
<Key>B22</Key>
<Value>ed973ead-a49a-49d5-93fe-2de3a7f96ca0</Value>
</KeyValue>
<KeyValue typeOfKey="ALTERNATE_IDENTIFIER">
<Key>Qommute</Key>
<Value>9e1b534d-1573-46d8-b1e0-6fc43eb11421</Value>
</KeyValue>
<KeyValue typeOfKey="ALTERNATE_IDENTIFIER">
<Key>B22</Key>
<Value>a9052135-c723-474d-8522-fe782bff451e</Value>
</KeyValue>
</keyList>