datagouv / data.gouv.fr

Ce dépôt rassemble les tickets techniques qui portent sur data.gouv.fr.
https://www.data.gouv.fr
76 stars 14 forks source link

Permettre de spécifier la version d'un schéma associé à une ressource #302

Closed fchabouis closed 2 years ago

fchabouis commented 3 years ago

Il est très utile de pouvoir spécifier qu'une ressource suit un certain schéma lors de la création d'une ressource. Par contre je n'ai pas l'impression qu'il soit possible de spécifier quelle version du schéma suit la ressource.

Comme les schéma évoluent, parfois de manière non rétro compatibles, il est compliqué pour un réutilisateur de savoir à quoi est sensé ressembler le fichier.

Dans un futur proche, nous aimerions valider automatiquement les ressources référencées sur le PAN lorsqu'un schéma est spécifié, mais nous ne pourrons pas le faire si nous ne savons pas sur quelle version du schéma faire la validation.

image

Les alternatives possibles

Supposer que c'est la dernière version du schéma, mais c'est pas terrible...

thbar commented 3 years ago

Cela va être d'autant plus important sur des formats plus complexes du type Netex, où une migration de version a des impacts potentiellement importants sur le code qui lit le fichier de l'autre côté.

fchabouis commented 3 years ago

@thbar il me semble que pour l'instant on ne peut spécifier comme schéma qu'un schéma issu de https://schema.data.gouv.fr/.

abulte commented 3 years ago

Yes, on a ça dans les tuyaux ! @geoffreyaldebert

geoffreyaldebert commented 3 years ago

Hello @fchabouis c'est bien en vue effectivement.

Côté interface, ce n'est pas implémenté pour le moment mais côté métadonnées des ressources c'est déjà en prod.

Par exemple : https://www.data.gouv.fr/api/1/datasets/borne-irve-exadys/#_ => Tu retrouves dans la métadonnée de la ressource la version du schéma.

Cette info permet de filtrer les ressources d'un schéma et d'une version particulière. Ex : https://www.data.gouv.fr/fr/datasets/?schema=etalab/schema-irve&schema_version=2.0.0 ou : https://www.data.gouv.fr/fr/datasets/?schema=etalab/schema-irve&schema_version=1.0.3

Si vous utilisez l'api pour publier une ressource, vous pouvez spécifier la version du schéma (objet schema avec deux propriétés "name" et "version")

Quand un producteur passe par publier.etalab.studio, la version du schéma est directement indiqué lors de la publication sur data.gouv.fr

Enfin, on va implémenter dans quelques semaines des consolidations automatiques de ressources dépendant d'un schéma. Pendant cette étape, on va chercher les ressources susceptibles de correspondre à un schéma. Si on en trouve, on mettra à jour automatiquement leurs métadonnées (dont la version du schéma).

fchabouis commented 3 years ago

Super merci @abulte et @geoffreyaldebert !

Si l'issue vous sert pour votre roadmap sur l'intégration de cette fonctionnalité sur le site, on peut la laisser ouverte, sinon vous pouvez la clôturer.

:pray:

agarrone commented 2 years ago

@geoffreyaldebert c'est tjr d'actu ?

agarrone commented 2 years ago

Je me permets de close n'hésitez pas à re ouvrir si jamais.