SPARQL-Generate: Génération de RDF et de texte à partir de RDF et flux de documents dans des formats hétérogènes
Abstract
SPARQL-Generate est un langage de transformation de RDF qui permet d’interroger des jeux de données RDF et des flux de documents dans des formats hétérogènes, pour générer du RDF ou du texte. La version actuelle de SPARQL-Generate permet d’exprimer des requêtes depuis tout type de CSV, JSON, HTML, GeoJSON, CBOR (version binaire de JSON), ou encore des flux de messages WebSocket ou MQTT.
SPARQL-Generate est utilisé dans de nombreux cas d’utilisation, notamment:
génération de linked data à partir de flux de documents;
génération de linked data à partir de gros documents;
transformation de jeux de données RDF;
génération d’une ontologie à partir de documents;
génération de documentation d’ontologies.
Le langage intègre différentes astuces syntaxiques facilitant la déclaration de transformations de documents en RDF, incluant (1) l’identification des documents sources, (2) la sélection itérative de sous-parties de ces documents, (3) des IRIs et littéraux à variables, (4) l’appel à des requêtes externes, (5) la génération de listes RDF. Il inclue une sous-partie du langage de transformation STTL (SPARQL-Template), qui permet également de générer du texte. De plus, Étant une extension de SPARQL 1.1, le langage présente également les avantages suivants:
Ceux qui sont familiers de SPARQL peuvent apprendre facilement SPARQL-Generate.
SPARQL-Generate bénéficie de l’expressivité de SPARQL 1.1: agrégats, modificateurs de séquences de solutions, fonctions SPARQL et mécanisme d’extension.
SPARQL-Generate s’intègre naturellement avec les standards existants pour consommer le Web des données, comme SPARQL ou les frameworks de programmation Web Sémantique.
L’implémentation, basée sur Jena et disponible sous licence Apache 2.0, est utilisable sur un site internet de démonstration, en ligne de commande, ou sous forme de librairie Java.