Le sémantique en Rust pour les dataspaces
Intervenant⋅e⋅s
Résumé
Les dataspaces permettent de construire un écosystème de confiance pour l’échange de données B2B de manière décentralisée et permet de préserver la souveraineté des données de valeur. La commission européenne a un programme [9] dédié à cette ambition.
Le protocol dataspace défini des offres comprenant la définition des datasets et des politiques d’accès. Ce protocole se base sur l’ontologie DCat et pouvant se combiner avec l’ontologie ODRL.
Dans le cadre de sa contribution au dataspace TEMS [10], Lum::invent [8] à notamment contribué à des projets open source qui combinent le langage Rust et le sémantique.
Ces contributions permettent ainsi de:
- définir le modèle en Rust
- de sérialiser/désérialiser en N-triple, Json+LD [5], Turtle[6]
- de générer le schéma (SHACL) depuis la structure Rust [4]
- de valider un dataset en lien avec un schéma SHACL [7]
- de générer des requêtes SPARQL pour insérer, modifier, supprimer, lister
Ces travaux utilisent des contributions open-source en Rust:
- Timothée Haudebourg (linked-data-rs [11], json-ld [12])
- Thomas Tanon (oxigraph [13])
Nous souhaitons partager notre expérience sur l’utilisation du langage Rust pour créer une application en utilisation des bibliothèques logicielles open source.
Une présentation du fonctionnement des librairies sera réalisée au travers d’un tutoriel/démonstration.
Enfin une présentation du cas d’usage du dataspace TEMS sera présentée avec les contributions aux projets edc-rs [15] et edc-web-ui [16].
AUTEUR
Diplômé d'un master professionnel audiovisuel à l'Université de Valenciennes, Marc-Antoine commence sa carrière sur des projets d'optimisation d'encodage vidéo H.264, de traitement du signal image et son, et de gestion de fichiers pour les formats broadcast.
Il devient architecte logiciel d'une solution BPM en cloud privé, puis pilote des développements vidéo autour de l'IMF lors d'une expérimentation full cloud à l'EBU.
Tourné vers l'innovation, il rejoint Nomalab pour développer un système de contrôle qualité audiovisuel basé sur le cloud.
En 2019, il fonde Lum::invent pour proposer des services et produits dédiés à l'industrie des médias, avec un ancrage fort sur les standards ouverts, les métadonnées sémantiques et les workflows métiers. Contributeur actif à des projets open source de référence comme FFmpeg, il s'implique également dans les travaux de standardisation au sein de l'EBU et du SMPTE.
LIENS:
[1] https://github.com/luminvent/linked-data-core [2] https://github.com/luminvent/linked-data-rs [3] https://github.com/luminvent/linked-data-schema [4] https://github.com/luminvent/linked-data-sparql [5] https://github.com/luminvent/json-ld [6] https://github.com/luminvent/turtle-syntax [7] https://github.com/rudof-project/rudof/ [8] https://luminvent.com/ [9] https://digital-strategy.ec.europa.eu/en/policies/data-spaces [10] https://tems-dataspace.eu/ [11] https://github.com/spruceid/linked-data-rs [12] https://github.com/timothee-haudebourg/json-ld [13] https://github.com/oxigraph/oxigraph [14] https://doc.rust-lang.org/reference/procedural-macros.html [15] https://github.com/dataspace-rs/edc-rs [16] https://github.com/dataspace-rs/edc-web-ui