Difference between revisions of "Tools - Outils"
m (add tim barners lee video) |
Speleolinux (talk | contribs) m (Added a bit about GraphQL) |
||
(7 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{| class="wikitable alternance center" | {| class="wikitable alternance center" | ||
|- | |- | ||
− | | | + | ! scope="col" | Tools (en) |
− | | Indiquez ici les ressources que vous trouvez utile pour comprendre le web séamantique, construire une ontologie, créer une base de donnée, | + | ! scope="col" | Outils (fr) |
+ | |- | ||
+ | | Please mention hereunder any resources that you find useful for understanding the semantic web, building an ontology, creating a database, etc. | ||
+ | | Indiquez ici les ressources que vous trouvez utile pour comprendre le web séamantique, construire une ontologie, créer une base de donnée, etc. | ||
|} | |} | ||
Line 31: | Line 34: | ||
| English | | English | ||
| [https://www.manning.com/books/linked-data the book] of Manning is practical to start with the semantic web | | [https://www.manning.com/books/linked-data the book] of Manning is practical to start with the semantic web | ||
− | | [https://www.manning.com/books/linked-data Le livre] de Manning est une bonne façon de commencer à s'intéresser au web | + | | [https://www.manning.com/books/linked-data Le livre] de Manning est une bonne façon de commencer à s'intéresser au web sémantique |
|- | |- | ||
| Semantic Web | | Semantic Web | ||
Line 38: | Line 41: | ||
| Une [http://www.ted.com/talks/tim_berners_lee_on_the_next_web.html vidéo] très claire de Tim Barners Lee | | Une [http://www.ted.com/talks/tim_berners_lee_on_the_next_web.html vidéo] très claire de Tim Barners Lee | ||
|- | |- | ||
+ | | Software | ||
+ | | English, French, German | ||
+ | | [http://3.22.46.53/about Skos Play] is a tool that we will perhaps use to develop our controlled vocabularies | ||
+ | | [http://3.22.46.53/about Skos Play] est un outil que nous allons, peut-être, utiliser pour élaborer nos vocabulaires contrôlés | ||
+ | |- | ||
+ | | RDF database and social network | ||
+ | | English, French, German | ||
+ | | [http://semantic-forms.cc:1952/ semantic-forms] is a web site backed by a SPARQL database where everyone can put person, organization, etc, profile | ||
+ | | [http://semantic-forms.cc:1952/ semantic-forms] est un site web propulsé par une base de données SPARQL où chacun peut ajouter: personne, organisation, etc. | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable alternance" | ||
+ | |- | ||
+ | ! scope="col" | "''[[Linking with non-RDF databases]]''" | ||
+ | ! scope="col" | "''[[Connexions avec des bases non RDF]]''" | ||
+ | |- | ||
+ | | valign="top" width="50%"| Here is a list of resources to articles and tools helping to implement links with other databases. | ||
+ | |||
+ | KarstLink is about linking databases together, whatever structure/language/APIs they have. The connection (ontologies, requests language) is using the web semantics formalisms and tools, but we do not want the authors of the databases to rebuild them entirely, only to adapt their interfaces, or even to export them in some linkable format. | ||
+ | |||
+ | * The web page: https://www.w3.org/wiki/ConverterToRdf | ||
+ | lists a lot of approaches intended for various bases/formats. Not necessarily up to date, but there are already many! | ||
+ | |||
+ | * For relational databases there are historically many existing tools, and a W3C recommendation: R2RML (RDB-> RDF mapping language). You can find a state of the art here: https://hal.archives-ouvertes.fr/hal-01066663v5. It is a bit dated but many things are still valid. | ||
+ | |||
+ | * For other types of databases, there is an extension of R2RML, called xR2RML, which supports any type of database, and there exists an implementation for MongoDB. | ||
+ | |||
+ | * RML is a bit of a competitor to R2RML, but with a very active community of developers and users (much larger and more active than xR2RML). | ||
+ | |||
+ | * Web API side (REST type, returning from JSON) we will find a tool from the semantic web team at Inria: SPARQL micro-services: https://github.com/frmichel/sparql-micro-service. It is rather intended to dynamically request a Web API in SPARQL. If the data is not too big, it can also be used to transform all the content of the API into RDF in one-shot mode. | ||
+ | |||
+ | * GraphQL is a query language which is an alternative to JSON as an API for database queries. It uses less requests to get the same data so can be more efficient. https://graphql.org | ||
+ | |||
+ | | valign="top" width="50%"| Voici une liste de ressources pour des articles et des outils aidant à implémenter des liens avec d'autres bases de données. | ||
+ | |||
+ | KarstLink veut échanger les données entre les bases, quelle que soit la structure / le langage / les API qu'elles possèdent. La connexion (ontologies, langage de requêtes) utilisera les formalismes et les outils du Web sémantique, mais nous ne voulons pas que les auteurs des bases de données les reconstruisent entièrement, mais adapte seulement leurs interfaces, ou même les exporte dans un format pouvant être utilisé comme source de données au format RDF.. | ||
+ | |||
+ | * La page web : https://www.w3.org/wiki/ConverterToRdf | ||
+ | recense des tas d'approches destinées à des bases/formats variés. Pas forcément à jour, mais il y en a deja beaucoup! | ||
+ | |||
+ | * Pour les bases relationnelles il y a historiquement pleins de choses, et une recommandation W3C : R2RML (langage de mapping RDB->RDF). On peut trouver un état de l'art ici : https://hal.archives-ouvertes.fr/hal-01066663v5. Ca date un peu mais pleins de choses sont encore valides. | ||
+ | |||
+ | * Pour d'autre types de bases, il y a une extension de R2RML, appelée xR2RML, qui supporte tout type de base de données, et il existe une implémentation pour MongoDB. | ||
+ | |||
+ | * RML est un travail un peu concurrent a R2RML, mais avec une communauté très active de développeurs et d'utilisateurs (beaucoup grosse et active plus que xR2RML). | ||
+ | |||
+ | * Côté API Web (type REST, retournant du JSON) on trouvera un outil de l'équipe web sémantique à l'Inria : les SPARQL micro-services: https://github.com/frmichel/sparql-micro-service. C'est plutôt destiné à requêter dynamiquement une API Web en SPARQL. Si les données ne sont pas trop grosses, ça peut aussi s'utiliser pour transformer tout le contenu de l'API en RDF en mode one-shot. | ||
+ | |||
| | | | ||
| | | | ||
− | | | + | |- |
+ | |} | ||
+ | |||
+ | {| class="wikitable alternance" | ||
+ | |- | ||
+ | ! scope="col" | "''[[Some suggestions of tools to link your database ]]''" | ||
+ | ! scope="col" | "''[[Quelques idees d'outils pour connecter votre base de donnees]]''" | ||
+ | |- | ||
+ | | valign="top" width="50%"| I have listed here some hints I got from a discussion with one of the engineer in the Web Semantic team at Inria, who has developed some tools, and published a number of articles on this topic. | ||
+ | |||
+ | TBC | ||
+ | |||
+ | |||
+ | | valign="top" width="50%"| Je donne ici quelques idees provenant d'une discussion avec un des ingenieurs de l'equipe Web Semantique a l'Inria, qui a construit des otuils et publies pas mal d'articles sur ce sujet. Il y a plusieurs strategies possibles, selon la nature des bases, et ce qu'on veut faire. | ||
+ | |||
+ | * Coreze ou Virtuoso: contiennent des moteurs SparQL multibases: peuvent interroger plusieurs bases en parallele, et restituer le resultat (RDF ou XML) sous diverses formes, par example en HTML dans une page web. Dans cette configuration, les bases ressources doivent accepter des requetes SparQL. | ||
+ | Dans Corese, avec "SparQL micro-services", le mapping (traduction SparQL vers Json ou XML de chaque base ressource) peut etre defini dans Corese, donc la base source n'a pas a etre modifiee. | ||
+ | |||
+ | * Developement d'API RDF/SparQL sur une base classique: R2RML est un langage standard pour construire ces mappings. Voir l'outil ONTOP de l'Univ Bozen-Bolzano (https://ontop-vkg.org/) | ||
+ | R2RML permet d'interroger en RDF des bases dedonnees relationnelles, soit par traduction brutale de la totalite de la base en RDF, soit par traduction de la requete en SQL. | ||
+ | |||
+ | |||
+ | |||
+ | | | ||
| | | | ||
|- | |- | ||
− | |||
− | |||
− | |||
− | |||
|} | |} |
Latest revision as of 06:17, 31 August 2022
Tools (en) | Outils (fr) |
---|---|
Please mention hereunder any resources that you find useful for understanding the semantic web, building an ontology, creating a database, etc. | Indiquez ici les ressources que vous trouvez utile pour comprendre le web séamantique, construire une ontologie, créer une base de donnée, etc. |
Theme | Language | Presentation (en) | Présentation (fr) |
---|---|---|---|
Ontology | French | A course explaining how to create a ontology with Protégé | un cours expliquant comment créer une ontologie avec Protégé |
Ontology | English | A tutorial explaining Protégé | un tutoriel pour Protégé |
Semantic Web | French | A course presenting the semantic web in great detail with examples and exercises | un cours de l'Inria présentant le web sémantique de manière très détaillée avec des exemples et des exercices |
Semantic Web | English | the book of Manning is practical to start with the semantic web | Le livre de Manning est une bonne façon de commencer à s'intéresser au web sémantique |
Semantic Web | English (Transcript in 28 languages) | A very clear video from Tim Barners Lee | Une vidéo très claire de Tim Barners Lee |
Software | English, French, German | Skos Play is a tool that we will perhaps use to develop our controlled vocabularies | Skos Play est un outil que nous allons, peut-être, utiliser pour élaborer nos vocabulaires contrôlés |
RDF database and social network | English, French, German | semantic-forms is a web site backed by a SPARQL database where everyone can put person, organization, etc, profile | semantic-forms est un site web propulsé par une base de données SPARQL où chacun peut ajouter: personne, organisation, etc. |
"Linking with non-RDF databases" | "Connexions avec des bases non RDF" | ||
---|---|---|---|
Here is a list of resources to articles and tools helping to implement links with other databases.
KarstLink is about linking databases together, whatever structure/language/APIs they have. The connection (ontologies, requests language) is using the web semantics formalisms and tools, but we do not want the authors of the databases to rebuild them entirely, only to adapt their interfaces, or even to export them in some linkable format.
lists a lot of approaches intended for various bases/formats. Not necessarily up to date, but there are already many!
|
Voici une liste de ressources pour des articles et des outils aidant à implémenter des liens avec d'autres bases de données.
KarstLink veut échanger les données entre les bases, quelle que soit la structure / le langage / les API qu'elles possèdent. La connexion (ontologies, langage de requêtes) utilisera les formalismes et les outils du Web sémantique, mais nous ne voulons pas que les auteurs des bases de données les reconstruisent entièrement, mais adapte seulement leurs interfaces, ou même les exporte dans un format pouvant être utilisé comme source de données au format RDF..
recense des tas d'approches destinées à des bases/formats variés. Pas forcément à jour, mais il y en a deja beaucoup!
|
"Some suggestions of tools to link your database " | "Quelques idees d'outils pour connecter votre base de donnees" | ||
---|---|---|---|
I have listed here some hints I got from a discussion with one of the engineer in the Web Semantic team at Inria, who has developed some tools, and published a number of articles on this topic.
TBC
|
Je donne ici quelques idees provenant d'une discussion avec un des ingenieurs de l'equipe Web Semantique a l'Inria, qui a construit des otuils et publies pas mal d'articles sur ce sujet. Il y a plusieurs strategies possibles, selon la nature des bases, et ce qu'on veut faire.
Dans Corese, avec "SparQL micro-services", le mapping (traduction SparQL vers Json ou XML de chaque base ressource) peut etre defini dans Corese, donc la base source n'a pas a etre modifiee.
R2RML permet d'interroger en RDF des bases dedonnees relationnelles, soit par traduction brutale de la totalite de la base en RDF, soit par traduction de la requete en SQL.
|