<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sparna Blog &#187; OWL</title>
	<atom:link href="https://blog.sparna.fr/category/technologie/owl/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.sparna.fr</link>
	<description>Web de données &#124; Architecture de l&#039;information &#124; Accès aux connaissances</description>
	<lastBuildDate>Tue, 03 Jun 2025 10:30:27 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>2013-2023 : ‘Tis SKOSPlay!’s Birthday !</title>
		<link>https://blog.sparna.fr/2023/03/13/2013-2023-tis-skosplays-birthday/</link>
		<comments>https://blog.sparna.fr/2023/03/13/2013-2023-tis-skosplays-birthday/#comments</comments>
		<pubDate>Mon, 13 Mar 2023 14:28:53 +0000</pubDate>
		<dc:creator><![CDATA[Marie Muller]]></dc:creator>
				<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[SHACL]]></category>
		<category><![CDATA[SHACL Play]]></category>
		<category><![CDATA[SKOS]]></category>
		<category><![CDATA[SKOS Play]]></category>
		<category><![CDATA[Thesaurus]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[ontologie]]></category>
		<category><![CDATA[skos play]]></category>
		<category><![CDATA[thesaurus]]></category>
		<category><![CDATA[web sémantique]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=1540</guid>
		<description><![CDATA[<p>Hi, it’s Marie (aka chutjetweet here). To be short I’m a documentalist, terminologist, old (linked &#8211; open) data maniac &#38; lil’ onto-Padawan and… just came to join Sparna’s team this early January ! To inaugurate my first article on Sparna’s blog, let’s share a little feedback of mine today about Sparna’s well-known SKOSPlay! whose 10 years’ birthday&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2023/03/13/2013-2023-tis-skosplays-birthday/">2013-2023 : ‘Tis SKOSPlay!’s Birthday !</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p><span style="font-weight: 400;">Hi, it’s Marie (aka chutjetweet </span><a href="https://twitter.com/chutjetweet"><span style="font-weight: 400;">here</span></a><span style="font-weight: 400;">). To be short I’m a documentalist, terminologist, old (linked &#8211; open) data maniac &amp; lil’ onto-Padawan and… just came to join Sparna’s team this early January !</span></p>
<p><span style="font-weight: 400;">To inaugurate my first article on Sparna’s blog, let’s share a little feedback of mine today about Sparna’s well-known </span><a href="https://skos-play.sparna.fr/play/"><span style="font-weight: 400;">SKOSPlay!</span></a><span style="font-weight: 400;"> whose 10 years’ birthday is to celebrate this year !</span></p>
<p><span style="font-weight: 400;">10 yo, quite a historic tool ! but more than ever actual in a context where the semantic technologies get front of the scene anew due to growing interest shown by the digital humanities movement to data interoperability projects via the standardized knowledge structuration (Wikipedia-Wikidata projects e.g., as semantic wiki devices), and also due to the last progress of artificial intelligence, now able to processing large amount of data and </span><a href="https://www.epimorphics.com/writing-ontologies-with-chatgpt/"><span style="font-weight: 400;">soon fully leveraging the potential of ontologies and knowledge graphs</span></a><span style="font-weight: 400;">.</span></p>
<table>
<tbody>
<tr>
<td><i><span style="font-weight: 400;"><a href="https://twitter.com/taxobob/status/1615594349512851456"><img class="alignnone wp-image-1561 size-full" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image5.png" alt="image5" width="878" height="321" /></a></span></i><em><span style="font-weight: 400;">From asking for a taxonomy </span><a href="https://twitter.com/mommi84/status/1631027355987656706"><span style="font-weight: 400;">to querying RDF files with an API</span></a><span style="font-weight: 400;">…</span></em></td>
</tr>
</tbody>
</table>
<p><span style="font-weight: 400;">This said, in a more practical way, semantic web standards are not always easy to manipulate as a professional &#8211; if non-initiate to SPARQL and nor confirmed data scientist, and even when you have got to deal with a simple structured list of terms !</span></p>
<p><span style="font-weight: 400;">Either your data is already SKOS-standardized (great !), there sometimes come to have a gap between normalization step and visualization step that requires a bit more technical IT skills. Either &#8211; most of time &#8211; the common muggle-born is to start with a plain Excel spreadsheet, create a list, add some hierarchy, maybe other scope notes or definitions and&#8230; end far puzzled wondering how to </span><span style="font-weight: 400;">get </span><a href="https://www.w3.org/DesignIssues/diagrams/lod/597992118v2_350x350_Back.jpg"><span style="font-weight: 400;">a 5-star data vocabulary</span></a><span style="font-weight: 400;"> ⭐ !</span></p>
<p>&nbsp;</p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image14.gif"><img class="alignnone size-full wp-image-1577" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image14.gif" alt="image14" width="500" height="208" /></a></p>
<p>&nbsp;</p>
<p><strong>A SKOSPlay!-within-a-SKOSPlay!</strong></p>
<table>
<tbody>
<tr>
<td><a href="https://twitter.com/belett/status/1583128873877008384"><img class="alignnone wp-image-1565 size-full" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image3.png" alt="image3" width="886" height="359" /></a><em><span style="font-weight: 400;">Wink to <a href="https://twitter.com/belett">@belett</a>, anything possible now with SKOSPlay!</span></em></td>
</tr>
</tbody>
</table>
<p><span style="font-weight: 400;">Aiming at visualizing (and printing !) SKOS thesauri, taxonomies and vocabularies at the very beginning, SKOSPlay! is a full online free and open source tool leveraging semantic technologies (RDF, SPARQL, inference, Linked Data) to generate downloadable HTML or PDF documents. More and more new features have been added since then : alignments display, OWL and SKOS-XL files processing, autocomplete fields and permuted indexes generating …</span></p>
<table>
<tbody>
<tr>
<td><a href="https://twitter.com/veronikaheim/status/1612375648948846592"><img class="alignnone size-full wp-image-1566" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image7.png" alt="image7" width="884" height="237" /></a><em><span style="font-weight: 400;">Hello <a href="https://twitter.com/veronikaheim">@veronikaheim</a>, maybe SKOSPlay! could match your need ?</span></em></td>
</tr>
</tbody>
</table>
<p><span style="font-weight: 400;">… among other nice and useful developments.</span></p>
<p><span style="font-weight: 400;">But as an Excel aficionada, the one that I prefer is </span><a href="https://skos-play.sparna.fr/play/convert?lang=en"><span style="font-weight: 400;">the Excel-to-RDF converter tool</span></a><span style="font-weight: 400;">.</span></p>
<p><span style="font-weight: 400;">One sheet. One import. One result. Easy-peasy, happy terminologist :))</span></p>
<p><span style="font-weight: 400;">(And you can even keep your custom colors templates and formats !!! </span><span style="font-weight: 400;">🦄</span><span style="font-weight: 400;"> )</span></p>
<p>&nbsp;</p>
<p><strong>Come on &amp; let’s SKOSPlay!</strong></p>
<p><span style="font-weight: 400;">Let&rsquo;s figure out you want to display or construct a small vocabulary you could quickly visualize in a standardized SKOS-structured way :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image10-2.png"><img class="alignnone size-full wp-image-1607" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image10-2.png" alt="image10-2" width="1657" height="1079" /></a></p>
<p><span style="font-weight: 400;">Now to fit in the SKOS model your data has to follow </span><a href="https://skos-play.sparna.fr/play/excel_test/excel2skos-exemple-1.xlsx"><span style="font-weight: 400;">a particular template</span></a><span style="font-weight: 400;"> you can fullfill by downloading on SKOSPlay! website.</span></p>
<p><span style="font-weight: 400;">First you have to define </span><a href="https://skos-play.sparna.fr/play/convert#excel-file-structure"><span style="font-weight: 400;">the header of the template</span></a><span style="font-weight: 400;"> : the global scheme of your vocabulary, its URI, title and description :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image12.png"><img class="alignnone size-full wp-image-1575" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image12.png" alt="image12" width="1347" height="189" /></a></p>
<p><span style="font-weight: 400;">Adding the terms of your list (with the URIs)… Here with the “@en” language indication on top of the column </span><a href="https://skos-play.sparna.fr/play/convert#languages"><span style="font-weight: 400;">as I am to create an English-French multilingual vocabulary</span></a><span style="font-weight: 400;"> :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image15.png"><img class="alignnone size-full wp-image-1578" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image15.png" alt="image15" width="1509" height="1021" /></a></p>
<p><span style="font-weight: 400;">Recreating the arborescent structure through the Excel template (don’t mind my color palette, I always like colouring my Excel sheets to better visualize the info at a glance !).</span></p>
<p><span style="font-weight: 400;">The hierarchical broader-narrower structure is to be recreated </span><a href="https://skos-play.sparna.fr/play/convert#sheet-body"><span style="font-weight: 400;">by adding a “skos:narrower” column</span></a><span style="font-weight: 400;"> (or skos:broader, as you want, with only 1 broader value per line) where you will list the different specific values front of the more generic one (separated by comas). Here I used a PREFIX too in order to shorten my http:// URIs, SKOSPlay! can process them anyway !</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image9.png"><img class="alignnone size-full wp-image-1572" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image9.png" alt="image9" width="1943" height="1431" /></a></p>
<p><span style="font-weight: 400;">Then adding a few notes and other information (multilingual values, skos:notation, any other default properties known in the converter (</span><a href="https://skos-play.sparna.fr/play/convert#prefixes"><span style="font-weight: 400;">see the documentation</span></a><span style="font-weight: 400;">) or different custom elements of yours by adding other PREFIXes :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image4.png"><img class="alignnone size-full wp-image-1569" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image4.png" alt="image4" width="1999" height="1269" /></a></p>
<p><span style="font-weight: 400;">Your Excel template is ready to go ! quite an easy configuration in my demo here, but SKOSPlay! can also deal with skos:Collections, SKOS-XL and other </span><a href="https://skos-play.sparna.fr/play/convert#advanced-features"><span style="font-weight: 400;">advanced RDF structures</span></a><span style="font-weight: 400;"> : blank nodes, RDF lists, named graphs. And now possible to generate OWL and SHACL files with the converter too !</span></p>
<p><span style="font-weight: 400;">Now it’s time to turn your (finally-not-so-dirty-<img src="https://s.w.org/images/core/emoji/72x72/1f438.png" alt="🐸" class="wp-smiley" style="height: 1em; max-height: 1em;" />) data into a SKOS-charming file. Take your favorite </span><del><span style="font-weight: 400;">magic wand</span></del><span style="font-weight: 400;"> SKOSPlay! </span><a href="https://skos-play.sparna.fr/play/convert"><span style="font-weight: 400;">Excel-to-RDF converter tool</span></a><span style="font-weight: 400;"> and load your Excel file in it (adding some optional parameters if needed).</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image8.png"><img class="alignnone size-full wp-image-1571" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image8.png" alt="image8" width="1601" height="885" /></a></p>
<p><span style="font-weight: 400;">Well done, it’s a wonderful RDF-ized vocabulary file (here in a Turtle format but you have also RDF/XML, N-Triples, N-Quads, N3 and TriG available) :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image1.png"><img class="alignnone size-full wp-image-1567" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image1.png" alt="image1" width="1617" height="1029" /></a></p>
<p>&nbsp;</p>
<p><strong>Wingardium Visualiza !</strong></p>
<p>We&rsquo;re almost done. <span style="font-weight: 400;">Go back to the website, </span><a href="https://skos-play.sparna.fr/play/upload"><span style="font-weight: 400;">tab “Play!”</span></a><span style="font-weight: 400;">, load your last RDF-serialized file and go to the next step to chose the kind of display you want to get, endly press (SKOS)Play! and … abracadataaaaaaa !</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image2.png"><img class="alignnone size-full wp-image-1568" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image2.png" alt="image2" width="1657" height="1197" /></a></p>
<p><span style="font-weight: 400;">Many different options to visualize your arborescent data. Tree, static and dynamic, but also more « professional » and printable sorts of displays like alphabetical, hierarchical or permuted views :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image6.png"><img class="alignnone size-full wp-image-1570" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image6.png" alt="image6" width="1999" height="1361" /></a></p>
<p><span style="font-weight: 400;">And KWIC (as for « </span><span style="font-weight: 400;">KeyWord In Context ») :</span></p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2023/03/image13.png"><img class="alignnone size-full wp-image-1576" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image13.png" alt="image13" width="1999" height="937" /></a></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">Even possible to load an online Google spreadsheet (</span><a href="https://docs.google.com/spreadsheets/d/1MpN4tzd7S7m7Dnr7IFOz43YoWcSYqUG1/edit?usp=share_link&amp;ouid=118425122592371390359&amp;rtpof=true&amp;sd=true"><span style="font-weight: 400;">mine is shared here</span></a><span style="font-weight: 400;">), just by adapting a little its URL for the converter’s need. Interesting feature in a collaborative purpose when you are team-building a vocabulary !</span></p>
<p><span style="font-weight: 400;">The whole pack </span><a href="https://skos-play.sparna.fr/play/convert#documentation"><span style="font-weight: 400;">fully documented</span></a><span style="font-weight: 400;"> and findable on Sparna’s </span><a href="https://skos-play.sparna.fr/play/"><span style="font-weight: 400;">website</span></a><span style="font-weight: 400;"> &amp; </span><a href="https://github.com/sparna-git/skos-play"><span style="font-weight: 400;">Git</span></a><span style="font-weight: 400;">. Some recent users even produced a </span><a href="http://blog.sparna.fr/2021/06/30/fair-data-collective-is-doing-cool-things-with-skos-play-and-xls2rdf/"><span style="font-weight: 400;">short video tutorial</span></a><span style="font-weight: 400;"> to show what they managed to do with different SKOSPlay! visualization tools.</span></p>
<p><span style="font-weight: 400;">Already knew about SKOSPlay! ? go see his little brother, </span><a href="https://shacl-play.sparna.fr/play/home;jsessionid=40BBB04DA1F3DCC1EBFB084A08EE2924?lang=en"><span style="font-weight: 400;">SHACLPlay!</span></a><span style="font-weight: 400;"> and feel free to give us some feedback in the comments <img src="https://blog.sparna.fr/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></span></p>
<p><span style="font-weight: 400;">Happy Birthday SKOSPlay! &amp; Long live Semantic Web !</span></p>
<p><span style="font-weight: 400;">A bit more Vouvray with your nougat de Tours ?</span></p>
<p><a href="https://www.my-loire-valley.com/2018/06/top-10-des-specialites-gourmandes-de-touraine/"><img class="alignnone size-full wp-image-1574" src="http://blog.sparna.fr/wp-content/uploads/2023/03/image11.png" alt="image11" width="1280" height="939" /></a></p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2023/03/13/2013-2023-tis-skosplays-birthday/">2013-2023 : ‘Tis SKOSPlay!’s Birthday !</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2023/03/13/2013-2023-tis-skosplays-birthday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Le CIDOC-CRM, ne nous arrachons plus les cheveux !</title>
		<link>https://blog.sparna.fr/2019/03/26/le-cidoc-crm-ne-nous-arrachons-plus-les-cheveux/</link>
		<comments>https://blog.sparna.fr/2019/03/26/le-cidoc-crm-ne-nous-arrachons-plus-les-cheveux/#comments</comments>
		<pubDate>Tue, 26 Mar 2019 14:35:24 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[CIDOC-CRM]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=1245</guid>
		<description><![CDATA[<p>C&#8217;est vrai que quand on commence à entendre parler du CIDOC-CRM, il y a de quoi se sentir &#171;&#160;Désespéré&#160;&#187; (comme le tableau de Courbet); moi aussi, il y a quelques années, si on m&#8217;avait demandé de faire quelque chose avec le CIDOC-CRM je me serais arraché les cheveux si je les avais eu encore longs.&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2019/03/26/le-cidoc-crm-ne-nous-arrachons-plus-les-cheveux/">Le CIDOC-CRM, ne nous arrachons plus les cheveux !</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">C&rsquo;est vrai que quand on commence à entendre parler du <a href="http://www.cidoc-crm.org/" target="_blank">CIDOC-CRM</a>, il y a de quoi se sentir <em>&laquo;&nbsp;Désespéré&nbsp;&raquo;</em> (comme le <a href="https://fr.wikipedia.org/wiki/Le_D%C3%A9sesp%C3%A9r%C3%A9" target="_blank">tableau</a> de <a href="https://www.musee-orsay.fr/fr/collections/dossier-courbet/biographie.html" target="_blank">Courbet</a>); moi aussi, il y a quelques années, si on m&rsquo;avait demandé de faire quelque chose avec le CIDOC-CRM je me serais arraché les cheveux si je les avais eu encore longs. Mais en fait, ce n&rsquo;est pas si terrible, et après avoir utilisé ce modèle dans plusieurs projets, je le trouve d&rsquo;une grande force et d&rsquo;une grande richesse. Je vous propose plus bas 2 ressources que j&rsquo;ai mis au point pour des formations sur le CIDOC-CRM : une <a href="http://labs.sparna.fr/cidoc-crm-frbroo-class-tree.html">navigation visuelle dans les classes du CRM+FRBRoo</a>, et un début de <a href="https://fr.slideshare.net/thomasfrancart/sparql-sur-les-donnes-cidoccrm-du-british-museum">tutorial SPARQL sur les données du British Museum</a>.</p>
<p style="text-align: justify;">Le CIDOC-CRM est une <strong>ontologie formelle de haut-niveau permettant de structurer la</strong> <strong>description et l&rsquo;histoire d&rsquo;objets patrimoniaux</strong> (tableaux, sculptures, bâtiments, fouilles archéologiques, etc.) &#8211; ou d&rsquo;autres informations similaires. L&rsquo;objectif de ce modèle est de permettre l&rsquo;<strong>intégration de données</strong> provenant de sources hétérogènes dans un graphe commun, cohérent, à l&rsquo;échelle d&rsquo;une institution ou au-delà, permettant ainsi l&rsquo;accès et l&rsquo;interprétation scientifique de ces informations.<br />
Le périmètre du CRM, tel qu&rsquo;il est défini, est &laquo;&nbsp;<em>toutes les informations requises pour l&rsquo;échange et l&rsquo;intégration de données scientifiques à propos du passé humain et de toutes les preuves de ce passé arrivées jusqu&rsquo;à nous&nbsp;&raquo;</em>. Etant fait pour la description structurée de l&rsquo;histoire d&rsquo;objets patrimoniaux, le CRM utilise a plein une <strong>modélisation évènementielle</strong>; c&rsquo;est-à-dire que fondamentalement, on ne dit pas &laquo;&nbsp;<em>Le tableau </em>Le Désespéré<em> a pour date de création : [entre 1843 et 1845]&nbsp;&raquo;</em>, mais <em>&laquo;&nbsp;Entre 1843 et 1845, Gustave Courbet a conduit une Activité de Création dont l&rsquo;objet était le tableau </em>Le désespéré<em>&laquo;&nbsp;</em>; nuance. D&rsquo;ailleurs, si j&rsquo;en crois la notice Wikipedia, on ne dit pas non plus <em>&laquo;&nbsp;ce tableau a pour titre </em>Le Désespéré<em>&laquo;&nbsp;</em>; on dit <em>&laquo;&nbsp;Gustave Courbet a effectué une activité de nommage de ce tableau qu&rsquo;il a baptisé </em>Désespoir<em>&laquo;&nbsp;</em>, puis <em>&laquo;&nbsp;Quelqu&rsquo;un d&rsquo;autre (qui ?) a (probablement) effectué une autre activité de nommage (quand ?) et a baptisé le même tableau </em>Le Désespéré<em>&laquo;&nbsp;</em>.</p>
<h2>Ce qui fait la force du CIDOC-CRM&#8230;</h2>
<p style="text-align: justify;">Le CIDOC-CRM est un modèle issu de plus de vingt ans de standardisation au sein du Comité International pour la Documentation (CIDOC) du Conseil International des Musées. Autant dire qu&rsquo;il est le résultat d&rsquo;une sédimentation de longues réflexions, ce qui rend ses fondations théoriques extrêmement solides. Le CRM a fait l&rsquo;objet de 2 versions d&rsquo;un standard ISO, ISO21127:2004 et <a href="https://www.iso.org/standard/57832.html" target="_blank">ISO21127:2014</a>. Il donne donc un <strong>cadre de modélisation rigoureux</strong>, mais avec une logique qu&rsquo;il faut s&rsquo;approprier.</p>
<p style="text-align: justify;">Son paradigme de <strong>modélisation événementielle</strong> est très puissant et permet d&rsquo;exprimer de nombreuses informations de façon très flexible. Les Evènements (ou plutôt, les Activités) sont les objets centraux que l&rsquo;on décrit à l&rsquo;aide du CIDOC-CRM : des Acteurs participent à des Evenements, qui se produisent dans un Lieu donné, une Temporalité donnée, et affectent des Objets donnés; tout cela pouvant être nommé avec des Appellations et typer avec des Types. Voilà, en une phrase, vous savez tout !</p>
<p style="text-align: justify;">Le CIDOC-CRM est un modèle générique avec un fort niveau d&rsquo;abstraction, et il ne descend volontairement pas dans le détail de spécifications de certains domaines métier particulier; c&rsquo;est pourquoi il a fait l&rsquo;objet d&rsquo;<strong>extensions pour des domaines spécifiques</strong>. Dans le monde de l&rsquo;infodoc on citera en particulier <a href="http://www.cidoc-crm.org/frbroo/">FRBRoo</a>, l&rsquo;intégration des principes du <a href="https://www.ifla.org/publications/functional-requirements-for-bibliographic-records">FRBR</a> dans le cadre de la modélisation orientée objet du CIDOC-CRM, ou bien <a href="http://www.cidoc-crm.org/pressoo/">PRESSoo</a>, lui-même une extension de FRBRoo pour la carctérisation des publication en série; dans d&rsquo;autres domaines, on peut citer <a href="http://www.cidoc-crm.org/crmarchaeo/">CRMarchaeo</a>, une extension pour la description des données archéologiques, une communauté active autour du CIDOC-CRM.</p>
<h2>&#8230;Et ce qui le rend compliqué</h2>
<p style="text-align: justify;">Ce n&rsquo;est pas la taille de ce modèle qui le rend compliqué. Le CIDOC-CRM contient 84 classes et 154 propriétés (288 si on compte aussi les inverses) (chiffre approximatif). C&rsquo;est peu, si l&rsquo;on compare aux 602 classes et 877 propriétés de <a href="http://schema.org">schema.org</a>, et cela en fait une ontologie de taille moyenne.</p>
<p style="text-align: justify;">Franchement, la chose qui le rend le plus compliqué, c&rsquo;est peut-être sa <strong>documentation</strong>. Un sympathique <a href="http://www.cidoc-crm.org/sites/default/files/2019-03-26-CIDOC%20CRM%20b.pdf">fichier PDF de 115 pages</a> (tiens, une nouvelle version sort aujourd&rsquo;hui 26 mars 2019, un hasard), ça c&rsquo;est sûr, c&rsquo;est de la spécification formelle ! de bon vieux tableaux de propriétés <em>à la</em> schema.org pourraient être les bienvenus. MAIS MAIS mais, pour vous aider à vous plonger dans le CIDOC, voici une petite <strong><a href="http://labs.sparna.fr/cidoc-crm-frbroo-class-tree.html">visualisation de l&rsquo;arborescence des classes du modèle et de FRBRoo</a></strong>, construite à partir de <a href="http://labs.sparna.fr">SKOS-Play</a> :</p>
<p style="text-align: justify;"><a href="http://labs.sparna.fr/cidoc-crm-frbroo-class-tree.html"><img class="aligncenter" src="http://labs.sparna.fr/images/cidoc-crm-tree.png" alt="" width="385" height="285" /></a><br />
Par ailleurs, les <a href="http://www.cidoc-crm.org/functional-units">diagrammes fournis pour les uses-cases</a>, assez utiles, utilisent un formalisme auquel on n&rsquo;est pas habitué dans la modélisation d&rsquo;ontologies classiques. Pour d&rsquo;autres documents d&rsquo;introduction on pourra consulter avec profit <a href="http://www.doremus.org/?page_id=36">la présentation du CRM et de FRBRoo sur le site de Doremus</a>.</p>
<p style="text-align: justify;">Un des autres aspects qui le rend compliqué c&rsquo;est son <strong>fort niveau d&rsquo;abstraction</strong>. Le CRM définit en effet des notions comme &laquo;&nbsp;Persistent Item&nbsp;&raquo;, &laquo;&nbsp;Man-Made Thing&nbsp;&raquo;, &laquo;&nbsp;Propositional Object&nbsp;&raquo;&#8230; pas évident de s&rsquo;approprier la définition de ces notions. Ajoutez à cela que tous les identifiants du CRM commencent par un code : &laquo;&nbsp;E5_Event&nbsp;&raquo;, &laquo;&nbsp;E70_Thing&nbsp;&raquo;, &laquo;&nbsp;P94_has_created&nbsp;&raquo;, et la lecture devient compliquée. Cette identification, rebutante au premier abord, n&rsquo;est finalement pas pire qu&rsquo;une autre, d&rsquo;autant que les noms des propriétés et des classes sont associés à des définitions très précises, et on fini par connaître par coeur les plus importants (E55_Type, P14_carried_out_by&#8230;).</p>
<p style="text-align: justify;">Par ailleurs le CRM est formellement défini dans le PDF de référence sus-mentionné, et il n&rsquo;existe <strong>pas d&rsquo;implémentations de référence du modèle en OWL</strong>. Les implémentations OWL fournies sur le site sont explictement non-officielles, et de toutes façons pas à jour. L&rsquo;implémentation OWL la plus à jour (mais qui date tout de même d&rsquo;il y a 2 ans, et de 3 versions du modèle) semble être celle d&rsquo;<a href="http://erlangen-crm.org/current-version">Erlangen-CRM</a>. Ce n&rsquo;est donc pas forcément immédiat d&rsquo;intégrer ce modèle dans une application basée sur les technologies du web de données.</p>
<h2 style="text-align: justify;">Les projets qui utilisent le CIDOC-CRM</h2>
<p>Mais qui qui qui (sont les snorkis) se sert du CIDOC-CRM ? L&rsquo;implémentation la plus impressionnante est celle du <a href="https://collection.britishmuseum.org">British Museum</a>, notamment au travers de l&rsquo;interface <a href="https://public.researchspace.org">ResearchSpace</a>. Vous aimez les spaghettis ? voici la formalisation des données du catalogue du BM en CIDOC-CRM :</p>
<p><a href="https://confluence.ontotext.com/download/attachments/33325240/mapping+manual-diagram.png?version=1&amp;modificationDate=1386147055000"><img class="aligncenter" src="https://confluence.ontotext.com/download/attachments/33325240/mapping+manual-diagram.png?version=1&amp;modificationDate=1386147055000" alt="" width="5419" height="3835" /></a></p>
<p style="text-align: justify;">Vous voulez expérimenter avec les données CIDOC-CRM du BM ? je vous propose un <strong><a href="https://fr.slideshare.net/thomasfrancart/sparql-sur-les-donnes-cidoccrm-du-british-museum">tutorial d&rsquo;interrogation des données du British Museum en SPARQL</a></strong>.</p>
<p style="text-align: justify;">Aux Etats-Unis, le <a href="https://britishart.yale.edu/collections/using-collections/technology/linked-open-data">Yale Center for British Art</a> publie également des données dans le CIDOC-CRM, mais semble-t-il assez light.</p>
<p style="text-align: justify;">Le projet Doremus a créé une <a href="http://data.doremus.org/ontology/">extension de FRBRoo / CIDOC-CRM pour la musique classique</a> (composition, concerts), documentée <a href="http://www.doremus.org/?page_id=36">ici</a>.</p>
<p style="text-align: justify;">Je travaille en ce moment sur une première version de la plateforme <a href="https://f.hypotheses.org/wp-content/blogs.dir/1718/files/2018/11/180924_MASA_CIDOC_Lyon.pdf">OpenArchaeo pour l&rsquo;intégration de données de fouilles archéologiques</a>, alignées sur le CIDOC-CRM à partir de base relationnelles (base ARSOL) et de fichiers XML (base AERBA).</p>
<p style="text-align: justify;">Par ailleurs, dans le cadre de ELI (European Legislation Identifier), j&rsquo;ai spécifié l&rsquo;extension du modèle ELI pour la description des étapes et des documents lors de l&rsquo;élaboration des <strong>projets de lois : <a href="https://joinup.ec.europa.eu/release/eli-dl/draft1">ELI-DL</a> </strong>(pour &laquo;&nbsp;draft legislation&nbsp;&raquo;); c&rsquo;est un bon cas pour l&rsquo;utilisation du CIDOC-CRM et de FRBRoo, puisque l&rsquo;élaboration d&rsquo;une loi est vue comme une séquence d&rsquo;Activités utilisant ou produisant des documents, jusqu&rsquo;à la publication finale de la loi au JO. C&rsquo;est également un bon scenario d&rsquo;utilisation du CIDOC-CRM comme cadre méthodologique, tout en utilisant uniquement des propriétés métier pour masquer les notions trop abstraites du CRM.</p>
<p style="text-align: justify;">On peut également supposer que l&rsquo;<a href="https://www.inha.fr">Institut National d&rsquo;Histoire de l&rsquo;Art</a> (INHA) s&rsquo;intéresse à ce genre de sujet. Le laboratoire <a href="http://larhra.ish-lyon.cnrs.fr/">LARHRA</a>, laboratoire de recherche historique à Lyon, s&rsquo;y intéresse également dans le cadre du projet <a href="http://symogih.org/">SYMOGIH</a>, pour lequel un autre modèle de données avait été initialement mis au point.</p>
<h2 style="text-align: justify;">Les outils pour convertir</h2>
<p style="text-align: justify;">Le CIDOC-CRM étant un modèle fait pour l&rsquo;intégration de données, le labo de <a href="https://www.ics.forth.gr/">FORTH</a>, en Crète, qui abrite les cerveaux du CRM, a mis au point un language et un outil de mapping, <a href="https://www.ics.forth.gr/isl/index_main.php?l=e&amp;c=721">X3ML</a>, permettant de mapper et convertir des fichiers XML vers le modèle CIDOC-CRM. Pour convertir les données de bases relationnelles, on peut utiliser <a href="https://ontop.inf.unibz.it/">&#8211;Ontop&#8211;</a>.</p>
<p><em>Alors, près à vous frotter au CIDOC-CRM ? avec toutes ces infos au moins, vous ne vous arracherez pas les cheveux !</em></p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2019/03/26/le-cidoc-crm-ne-nous-arrachons-plus-les-cheveux/">Le CIDOC-CRM, ne nous arrachons plus les cheveux !</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2019/03/26/le-cidoc-crm-ne-nous-arrachons-plus-les-cheveux/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Article ArABESque &#8211; Le web de données, de &#171;&#160;l&#8217;information en réseau&#160;&#187;</title>
		<link>https://blog.sparna.fr/2016/08/01/article-arabesque-web-de-donnees-information-reseau/</link>
		<comments>https://blog.sparna.fr/2016/08/01/article-arabesque-web-de-donnees-information-reseau/#comments</comments>
		<pubDate>Mon, 01 Aug 2016 12:29:56 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[abes]]></category>
		<category><![CDATA[arABESque]]></category>
		<category><![CDATA[web de données]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=1050</guid>
		<description><![CDATA[<p>La revue &#171;&#160;ArABESque&#160;&#187; publie dans son numéro 83 un dossier intitulé &#171;&#160;Créer du lien, faire sens  &#8211; Un nouveau souffle sur les données&#171;&#160;. Je signe l&#8217;article d&#8217;introduction de ce dossier, qui brosse le paysage, revient sur l&#8217;historique et donne quelques perspectives de l&#8217;écosystème du web de données. ArABESque est la revue de l&#8217;ABES (Agence Bibliographique&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2016/08/01/article-arabesque-web-de-donnees-information-reseau/">Article ArABESque &#8211; Le web de données, de &laquo;&nbsp;l&rsquo;information en réseau&nbsp;&raquo;</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p><em>La revue &laquo;&nbsp;<a href="http://www.abes.fr/Arabesques" target="_blank">ArABESque</a>&nbsp;&raquo; publie dans son numéro 83 un dossier intitulé &laquo;&nbsp;<a href="http://www.abes.fr/Arabesques/Arabesques-n-83" target="_blank"><b>Créer du lien, faire sens  &#8211; Un nouveau souffle sur les données</b></a>&laquo;&nbsp;. Je signe l&rsquo;article d&rsquo;introduction de ce dossier, qui brosse le paysage, revient sur l&rsquo;historique et donne quelques perspectives de l&rsquo;écosystème du web de données. ArABESque est la revue de l&rsquo;<a href="http://abes.fr" target="_blank">ABES</a> (Agence Bibliographique de l&rsquo;Enseignement Supérieur), qui gère notamment le <a href="http://www.abes.fr/Sudoc/Sudoc-public-presentation" target="_blank">SUDOC</a>, catalogue collectif des bibliothèques de l&rsquo;enseignement supérieur, 10 millions de notices, en RDF, évidemment !<br />
</em></p>
<p><span id="more-1050"></span></p>
<h1>Le web de données, de « l’information en réseau »</h1>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Le web de données (on préférera ce terme à celui plus ambigu de web sémantique), ce n&rsquo;est pas compliqué ; ça marche et c&rsquo;est utile, en particulier pour les bibliothèques.<b> </b></span></span></span></p>
<h2>Retour aux racines du web</h2>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Le web n&rsquo;a pas été conçu pour n&rsquo;être qu&rsquo;un paquet de documents mis en lien. Il intègre, dès sa conception en 1989 par Tim Berners Lee<a class="sdfootnoteanc" href="#sdfootnote1sym" name="sdfootnote1anc"><sup>1</sup></a>, plus de sémantique que l&rsquo;utilisation qui en sera faite ensuite. En particulier par la dualité Identifiant/Représentation :</span></span></span></p>
<ul>
<li>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Identifiant : ce qui commence par &laquo;&nbsp;http://&#8230;&nbsp;&raquo; et que l&rsquo;on voit dans la barre d&rsquo;adresse de notre navigateur est une URL, où le &laquo;&nbsp;L&nbsp;&raquo; est mis pour &laquo;&nbsp;Locator&nbsp;&raquo;. C&rsquo;est donc </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>l&rsquo;</b></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>adresse d&rsquo;un document sur le web</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">; mais ce n&rsquo;est qu&rsquo;un cas particulier des URIs, où le &laquo;&nbsp;I&nbsp;&raquo; est mis pour &laquo;&nbsp;</span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>Identifier</i></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&laquo;&nbsp;, qui sont des </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>identifiants, dans le contexte du web, de choses du monde réel</b></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>. </b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">On comprend donc qu&rsquo;on peut identifier sur le web n&rsquo;importe quoi à l&rsquo;aide d&rsquo;une URI : Victor Hugo, les pizzas </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>margherita</i></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">, le terme de thésaurus &laquo;&nbsp;gouvernance&nbsp;&raquo;, la Loire, la caractéristique &laquo;&nbsp;se situe à&nbsp;&raquo;, etc. On parle d&rsquo;une façon générale de </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>ressources</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">.</span></span></span></p>
</li>
<li>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Représentation : si une URI est l&rsquo;identifiant d&rsquo;une &laquo;&nbsp;ressource&nbsp;&raquo;, alors quel &laquo;&nbsp;document&nbsp;&raquo; obtiendra-t-on en naviguant vers cette URI ? On a l&rsquo;habitude d&rsquo;obtenir pour une même adresse toujours le même document, mais d&rsquo;une façon générale un identifiant peut être associé à </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>plusieurs représentations</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"> qui varient &#8211; de façon transparente &#8211; en fonction de préférences de langue, de format, de lieu, etc. C&rsquo;est ce qu&rsquo;on appelle la </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>négociation de contenu</b></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>.</b></span></span></p>
</li>
</ul>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Cette capacité des URIs d&rsquo;identifier absolument n&rsquo;importe quoi, indépendamment d’une représentation particulière, est la clé de voûte de l&rsquo;universalité du web (de données).</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Une fois les &laquo;&nbsp;choses&nbsp;&raquo; identifiées et rendues indépendantes des documents qui les représentent, il devient possible de parler de ces choses : je peux publier sur le web l&rsquo;assertion que &laquo;&nbsp;La Tour Eiffel se situe à Paris&nbsp;&raquo;, en utilisant 3 URIs pour identifier les 3 composantes de cette assertion : La Tour Eiffel, la notion de &laquo;&nbsp;se situer à&nbsp;&raquo;, et Paris. C&rsquo;est le standard RDF (Resource Description Framework) qui permet d’employer ces assertions en triplets. Notons au passage que, le web étant par nature décentralisé, n&rsquo;importe qui est libre :</span></span></span></p>
<ul>
<li>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">de créer une nouvelle URI pour identifier Paris ;</span></span></span></p>
</li>
<li>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">ou de créer une assertion en se référant à une URI déjà existante pour Paris (par exemple celle définie par l&rsquo;Insee<a class="sdfootnoteanc" href="#sdfootnote2sym" name="sdfootnote2anc"><sup>2</sup></a>) ;</span></span></span></p>
</li>
<li>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">ou encore d&rsquo;exprimer des liens d&rsquo;équivalence entre identifiants : l&rsquo;URI que je définis pour Paris représente la même &laquo;&nbsp;chose&nbsp;&raquo; que celle définie par l&rsquo;Insee.</span></span></span></p>
</li>
</ul>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">On voit donc se dessiner ce qui nous occupe : un réseau décentralisé de données liées par des triplets.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Mais il faut aller plus loin pour que l&rsquo;interopérabilité soit complète &#8211; puisque le web de données n&rsquo;est qu&rsquo;une solution à la problématique de l&rsquo;interopérabilité. En effet, pour qu&rsquo;une autre application puisse décoder mon assertion, il faut que je donne une définition précise des identifiants que j&rsquo;ai utilisés, qui sont sans doute différents de ceux que comprend cette application. En particulier, il faut que je donne une définition précise de mes &laquo;&nbsp;verbes&nbsp;&raquo; (&laquo;&nbsp;est situé à&nbsp;&raquo;) et mes &laquo;&nbsp;types&nbsp;&raquo; (&laquo;&nbsp;Lieu&nbsp;&raquo;, &laquo;&nbsp;Personne&nbsp;&raquo;, etc.). C&rsquo;est ce que permettent les </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>ontologies</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">, dont l&rsquo;objectif est de donner un sens univoque à ce dont je parle, à l&rsquo;aide de la logique formelle (on parle également de </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>vocabulaire</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"> ou de </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>modèle de données</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">, un peu par abus de langage). Les ontologies permettent également de déclarer des équivalences entre verbes ou entre types, rendant ainsi interopérables des données hétérogènes. Par exemple, je peux dire que, dans mon contexte &laquo;&nbsp;est situé à &nbsp;&raquo; relie quelque chose à un &laquo;&nbsp;Lieu&nbsp;&raquo; et que cela représente la même notion que l&rsquo;identifiant &laquo;&nbsp;basedNear&nbsp;&raquo; défini dans une autre ontologie bien connue, FOAF<a class="sdfootnoteanc" href="#sdfootnote3sym" name="sdfootnote3anc"><sup>3</sup></a>.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Les ontologies font donc émerger de cet océan de liens des structures interopérables, rendant ainsi les données liées plus &laquo;&nbsp;sémantiques&nbsp;&raquo;, c’est-à-dire plus facilement réutilisables.</span></span></span></p>
<h2>Quels enjeux et quelles conséquences ?</h2>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Souvenons-nous des fausses promesses entendues au milieu des années 2000 à propos du web de données : les machines allaient bientôt comprendre &laquo;&nbsp;le sens&nbsp;&raquo; des textes, on nous parlait de web 3.0, de &laquo;&nbsp;Twine&nbsp;&raquo; (un site qui n’existe plus maintenant mais qui promettait la révolution des réseaux sociaux), on cherchait quelle serait la &laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>killer-app</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&nbsp;&raquo; &#8211; une application si attrayante qu’elle aurait justifié la technologie à elle seule, etc. Rien de tout cela n&rsquo;est arrivé, mais d&rsquo;autres conséquences ont eu lieu.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">D&rsquo;abord une quantité grandissante de &laquo;&nbsp;données ouvertes et liées&nbsp;&raquo; publiées par une variété importante de producteurs de données : c&rsquo;est le fameux &laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>Linked Open Data</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&laquo;&nbsp;<a class="sdfootnoteanc" href="#sdfootnote4sym" name="sdfootnote4anc"><sup>4</sup></a>. Citons-en quelques points notables: DBPedia francophone (une extraction en RDF des données de Wikipedia), data.bnf.fr (notices FRBRisées &#8211; voir plus bas -, autorités et thématiques de la Bibliothèque Nationale de France), ou encore VIAF (Virtual International Authority File, une mise en commun des fichiers d&rsquo;autorité d&rsquo;une quarantaine de bibliothèques et de musées).</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Dans cet ensemble de données, il faut en mentionner certaines ayant un statut particulier : les thésaurus. Ceux-ci peuvent être représentés et publiés dans le modèle <a href="http://www.sparna.fr/skos/SKOS-traduction-francais.html" target="_blank">SKOS</a>. Ce modèle permet d&rsquo;aligner les thésaurus pour permettre l&rsquo;interopérabilité de catalogues documentaires utilisant des vocabulaires d&rsquo;indexation différents (&laquo;&nbsp;Désobéissance civile&nbsp;&raquo; dans Rameau est ainsi rapprochée de &laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>Civil disobedience</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&nbsp;&raquo; dans les sujets de la librairie du congrès américain<a class="sdfootnoteanc" href="#sdfootnote5sym" name="sdfootnote5anc"><sup>5</sup></a>). Quant aux ontologies, on se référera au projet LOV &#8211; </span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>Linked Open Vocabularies<a class="sdfootnoteanc" href="#sdfootnote6sym" name="sdfootnote6anc"><sup>6</sup></a></i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Ensuite, une appropriation de cet enjeu des données structurées et liées par les grands moteurs de recherche : c&rsquo;est l&rsquo;initiative </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><u>schema.org<a class="sdfootnoteanc" href="#sdfootnote7sym" name="sdfootnote7anc"><sup>7</sup></a></u></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">, qui propose un modèle de description de &laquo;&nbsp;plein de choses dont on parle sur le web&nbsp;&raquo; (blogs, livres, films, produits, etc.), compréhensible par Google, Yahoo, Bing et consorts. On peut reprocher à </span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><u>schema.org</u></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"> son biais vers le e-commerce, sa vision occidentalisée et son manque de transparence dans la gouvernance, mais si les bibliothèques souhaitent rendre leurs données plus visibles par les moteurs, cela passe par la publication de données compatibles avec </span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><u>schema.org</u></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">D&rsquo;une façon plus profonde, ces technologies induisent une représentation générale de l&rsquo;information en </span></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>graphe décentralisé</b></span></span><span style="font-family: Arial,serif;"><span style="font-size: small;"><b>,</b></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"> en réseau. Ce mode de structuration, de pensée, fait suite à celui plutôt tabulaire des bases relationnelles, et plutôt hiérarchique de XML. La conséquence est flagrante sur les notices bibliographiques avec le modèle FRBR. Les &laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>Functionnal Requirement for Bibliographic Records</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&laquo;&nbsp;, successeurs de l&rsquo;ISBD (&laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>International Standard for Bibliographic Record</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&laquo;&nbsp;) proposent en effet un éclatement de la notice en 4 niveaux conceptuels, eux-mêmes reliés aux personnes ou aux organisations impliquées dans la vie du document (auteur, contributeur, éditeur, possesseur), lesquelles sont elles-mêmes reliées entre elles ou à d&rsquo;autres données du web.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Cette tendance est à rapprocher du constat que de plus en plus de systèmes informatiques de diffusion des catalogues utilisent une base de graphe RDF (&laquo;&nbsp;</span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><i>triplestore</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">&laquo;&nbsp;) pour centraliser les métadonnées des notices FRBRisées, les fiches d&rsquo;autorité et les thésaurus. Cette base devient le pivot central des canaux de diffusion (sites web, flux RSS, formats d&rsquo;échange métier, etc.). Les lois européennes sont notamment diffusées sur ce mode, via la base Cellar et le portail Eur-Lex<a class="sdfootnoteanc" href="#sdfootnote8sym" name="sdfootnote8anc"><sup>8</sup></a>.</span></span></span></p>
<h2>Prochaines promesses ?</h2>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Sans retomber dans les promesses hasardeuses évoquées plus haut, on peut néanmoins esquisser les lignes de force du web de données pour les prochaines années : une utilisation grandissante de </span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"><u>schema.org</u></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;"> par les moteurs de recherche et les projets de diffusion de données; l&rsquo;intégration native des fonctions de publication/récupération de données du web dans les Content management system (CMS) et les SIGB; la publication et l&rsquo;alignement de plus en plus de données &#8211; dont des thésaurus ou des données de la recherche; la généralisation de FRBR et de ses dérivés pour la description des notices bibliographiques, etc.</span></span></span></p>
<p class="western" align="justify"><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: small;">Au-delà des aspects technologiques, ce sont des logiques de partage, de réutilisation, de mise en réseau, de collaboration, ou d&rsquo;insertion dans un écosystème d&rsquo;acteurs, qui sont favorisés par cet artefact unique qu’est le web de données.</span></span></span></p>
<div id="sdfootnote1">
<p><span style="font-size: small;"><a class="sdfootnotesym" href="#sdfootnote1anc" name="sdfootnote1sym">1</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">Voir l&rsquo;article de référence sur le sujet : Tim Berners-Lee, James Hendler and Ora Lassila, &laquo;&nbsp;The Semantic Web&nbsp;&raquo;, </span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><i>Scientific American</i></span></span></span><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">, Mai 2001.</span></span></span></span></p>
</div>
<div id="sdfootnote2">
<p class="western" align="justify"><a class="sdfootnotesym" href="#sdfootnote2anc" name="sdfootnote2sym">2</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">URI de Paris définie par l&rsquo;Insee : </span></span></span><a href="http://id.insee.fr/geo/commune/75056"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">http://id.insee.fr/geo/commune/75056</span></span></a><span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"> , voir </span></span></span><a href="http://rdf.insee.fr/geo"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">http://rdf.insee.fr/geo</span></span></a></p>
</div>
<div id="sdfootnote3">
<p class="western" align="justify"><a class="sdfootnotesym" href="#sdfootnote3anc" name="sdfootnote3sym">3</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">FOAF : </span></span></span></span><a href="http://xmlns.com/foaf/spec/"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">http://xmlns.com/foaf/spec/</span></span></span></a></p>
</div>
<div id="sdfootnote4">
<p><span style="font-size: small;"><a class="sdfootnotesym" href="#sdfootnote4anc" name="sdfootnote4sym">4</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">Linked Open Data : </span></span></span></span><a href="http://linkeddata.org/"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">http://linkeddata.org/</span></span></span></a> </span></p>
</div>
<div id="sdfootnote5">
<p><span style="font-size: small;"><a class="sdfootnotesym" href="#sdfootnote5anc" name="sdfootnote5sym">5</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">En triplet RDF : &lt;http://data.bnf.fr/ark:/12148/cb12049451f&gt; skos:closeMatch &lt;http://id.loc.gov/authorities/subjects/sh90000103&gt;</span></span></span></span></span></p>
</div>
<div id="sdfootnote6">
<p class="western" align="justify"><a class="sdfootnotesym" href="#sdfootnote6anc" name="sdfootnote6sym">6</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">LOV : </span></span></span></span><a href="http://lov.okfn.org/"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">http://lov.okfn.org</span></span></span></a></p>
</div>
<div id="sdfootnote7">
<p class="western" align="justify"><a class="sdfootnotesym" href="#sdfootnote7anc" name="sdfootnote7sym">7</a><sup><span style="font-size: xx-small;"></span></sup> <a href="http://schema.org/"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;"><span lang="en-US">http://schema.org</span></span></span></a></p>
</div>
<div id="sdfootnote8">
<p><span style="font-size: small;"><a class="sdfootnotesym" href="#sdfootnote8anc" name="sdfootnote8sym">8</a><sup><span style="font-size: xx-small;"></span></sup> <span style="color: #000000;"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">EurLex : </span></span></span><a href="http://eurlex.europa.eu/"><span style="font-family: Arial,serif;"><span style="font-size: xx-small;">http://eurlex.europa.eu</span></span></a> </span></p>
</div>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2016/08/01/article-arabesque-web-de-donnees-information-reseau/">Article ArABESque &#8211; Le web de données, de &laquo;&nbsp;l&rsquo;information en réseau&nbsp;&raquo;</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2016/08/01/article-arabesque-web-de-donnees-information-reseau/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VIVO / VITRO : solution d&#8217;édition et de publication RDF basée sur une ontologie</title>
		<link>https://blog.sparna.fr/2014/09/24/vivo-vitro-edition-publication-rdf-ontologie/</link>
		<comments>https://blog.sparna.fr/2014/09/24/vivo-vitro-edition-publication-rdf-ontologie/#comments</comments>
		<pubDate>Wed, 24 Sep 2014 08:32:49 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Editeurs]]></category>
		<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=655</guid>
		<description><![CDATA[<p>Théoriquement, RDF est un format d&#8217;échange de données. Ce qui signifie que dans les architectures informatiques les données RDF transitent d&#8217;applications en applications, mais ne sont généralement pas à l&#8217;intérieur des applications. Celles-ci peuvent rester basées sur des bases relationnelles classiques, et, si besoin, exposer leurs données en RDF ou SPARQL via des middlewares comme&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/09/24/vivo-vitro-edition-publication-rdf-ontologie/">VIVO / VITRO : solution d&rsquo;édition et de publication RDF basée sur une ontologie</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">Théoriquement, <a href="http://fr.wikipedia.org/wiki/Resource_Description_Framework" target="_blank">RDF</a> est un format d&rsquo;échange de données. Ce qui signifie que dans les architectures informatiques les données RDF <em>transitent</em> d&rsquo;applications en applications, mais ne sont généralement pas <em>à l&rsquo;intérieur</em> des applications. Celles-ci peuvent rester basées sur des bases relationnelles classiques, et, si besoin, exposer leurs données en RDF ou SPARQL via des middlewares comme <a href="http://d2rq.org/" target="_blank">D2RQ</a>, ou via des exports spécifiques. Si bien que, <em>théoriquement</em>, il n&rsquo;y a pas de besoin de modifier/créer nativement des données RDF&#8230;</p>
<p style="text-align: justify;"><span id="more-655"></span></p>
<p style="text-align: justify;"><em>Théoriquement</em>, car, dans certains cas, on peut vouloir baser une application directement sur un triplestore RDF (ce qui a <a title="Bénéfices clés des technologies du web de données 2/2 – absence de modèle, raisonnement" href="http://blog.sparna.fr/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/">bien des avantages</a>), ou bien avoir la possibilité de modifier, via un formulaire, des données RDF, en se basant sur une ontologie OWL particulière.</p>
<p style="text-align: justify;">Et le hic c&rsquo;est que les briques logicielles pour pouvoir éditer du RDF directement, via des formulaires générés à partir d&rsquo;une ontologie par exemple, il n&rsquo;y en a pas des tonnes. En fait j&rsquo;en connais 2 que j&rsquo;ai pu mettre en œuvre dans des projets différents : <a href="http://rdforms.org" target="_blank">RDForms</a> (anciennement <a href="https://code.google.com/p/rforms/" target="_blank">RForms sur l&rsquo;ancien site Google Code</a>), sur lequel je reviendrai sûrement pus tard, et <a href="http://www.vivoweb.org/" target="_blank">VIVO</a>, ou plus exactement <a href="https://github.com/vivo-project/Vitro" target="_blank">VITRO</a>.</p>
<p style="text-align: justify;">VIVO est un projet commun de plusieurs universités américaines et en particulier de l&rsquo;<a href="http://www.cornell.edu/" target="_blank">Université de Cornell</a>. L&rsquo;objectif ? partager et mettre en lien les travaux de recherche des chercheurs de ces universités. Le moyen ? les technologies du web de données, RDF, OWL, SPARQL. L&rsquo;outil ? VIVO, donc, qui permet de mettre en ligne les descriptions des publications scientifiques, des chercheurs, des conférences, et des labos de tout ce beau monde. L&rsquo;originalité ? c&rsquo;est que VIVO est basé sur un triplestore RDF et un moteur SolR pour la recherche, et que ses écrans de navigation et d&rsquo;édition réagissent directement à une ontologie OWL, que l&rsquo;on peut éditer directement dans le back-office de l&rsquo;outil, en rajoutant également des annotations spécifiques pour contrôler certains comportements (comme la séparation des champs en onglets dans les écrans). Côté customisation également, des pages spécifiques peuvent être créées à partir de requêtes SPARQL et de templates <a href="http://freemarker.org/" target="_blank">Freemarker</a> pour la présentation des résultats; le menu de navigation principal est également paramétrable. Et cerise sur le gâteau, la publication des données en RDF pour chaque fiche, via négociation de contenu, est incluse nativement.</p>
<p><a href="http://blog.sparna.fr/wp-content/uploads/2014/08/vivo_poster.jpg"><img class=" wp-image-812 aligncenter" src="http://blog.sparna.fr/wp-content/uploads/2014/08/vivo_poster-300x199.jpg" alt="vivo_poster" width="369" height="245" /></a></p>
<p style="text-align: justify;">Toutes ces fonctions sont offertes par la brique logicielle VITRO, qui est donc une brique logicielle &laquo;&nbsp;nue&nbsp;&raquo;. Et VIVO est un paramétrage assez conséquent de cette brique nue, avec une ontologie spécifique sur le domaine de la recherche scientifique, un menu de navigation spécifique (&laquo;&nbsp;People&nbsp;&raquo; / &laquo;&nbsp;Research&nbsp;&raquo; / &laquo;&nbsp;Organizations&nbsp;&raquo; / &laquo;&nbsp;Events&nbsp;&raquo;), et des écrans d&rsquo;affichage particuliers, pour le profil d&rsquo;un chercheur par exemple. En plus certaines visualisations sont incluses, comme une &laquo;&nbsp;<a href="http://vivo.med.cornell.edu/vivo/vis/map-of-science/about" target="_blank">Map of Science</a>&nbsp;&raquo; (carte conceptuelle des thématiques de recherche d&rsquo;un chercheur ou d&rsquo;un labo), une navigation géographique par pays, ou un <a href="http://vivo.cns.iu.edu/gallery.html#coauthor" target="_blank">graphe des co-auteurs d&rsquo;un chercheur</a>. Le mieux est encore d&rsquo;aller regarder tout cela sur les instances de VIVO actuellement en ligne, comme celle de l&rsquo;<a href="https://vivo.ufl.edu/" target="_blank">University of Florida</a> ou celle de <a href="http://vivo.cornell.edu/" target="_blank">Cornell</a> (voir la <a href="http://www.vivoweb.org/international-researcher-network" target="_blank">liste de tous les déploiements de VIVO</a>).</p>
<p style="text-align: justify;">L&rsquo;intérêt pour toutes ces institutions de publier les données brutes de leurs recherche dans un format RDF est de pouvoir 1/ faire des liens entre les données de chaque institution et 2/ mettre ensemble ces données dans un moteur de recherche centralisé, comme cela est démontré par le moteur <a href="http://beta.vivosearch.org/" target="_blank">beta.vivosearch.org</a> qui aggrège et permet de rechercher sur les données de 8 institutions de recherche.</p>
<p style="text-align: justify;">Avec VITRO, on a donc :</p>
<ul>
<li style="text-align: justify;">un outil open-source, J2EE, prêt à déployer dans Tomcat;</li>
<li style="text-align: justify;">une plateforme de navigation / édition / recherche dans un triplestore RDF;</li>
<li style="text-align: justify;">avec un back-office permettant de modifier directement les données RDF, en se basant sur n&rsquo;importe quelle ontologie de domaine;</li>
<li style="text-align: justify;">avec une gestion des comptes utilisateurs et des droits d&rsquo;accès;</li>
<li style="text-align: justify;">avec des possibilités de customisation &laquo;&nbsp;relativement&nbsp;&raquo; aisées pour un développeur Java;</li>
</ul>
<p>L&rsquo;idéal serait de pouvoir mettre l&rsquo;outil à l&rsquo;épreuve !</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/09/24/vivo-vitro-edition-publication-rdf-ontologie/">VIVO / VITRO : solution d&rsquo;édition et de publication RDF basée sur une ontologie</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2014/09/24/vivo-vitro-edition-publication-rdf-ontologie/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Penser, modéliser (pour le web de données) &#8211; 2/2</title>
		<link>https://blog.sparna.fr/2014/05/26/penser-modeliser-web-de-donnees-2/</link>
		<comments>https://blog.sparna.fr/2014/05/26/penser-modeliser-web-de-donnees-2/#comments</comments>
		<pubDate>Mon, 26 May 2014 11:36:09 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[archives]]></category>
		<category><![CDATA[modèle]]></category>
		<category><![CDATA[modélisation]]></category>
		<category><![CDATA[ontologie]]></category>
		<category><![CDATA[thesaurus]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=579</guid>
		<description><![CDATA[<p>Je donnais précédemment quelques retours d&#8217;expérience sur la création d&#8217;une ontologie OWL de description des fonds d&#8217;archives, initiée par la société Anaphore. Je voulais ici mettre en avant quelques points précis de ce modèle, quelques-uns des choix de modélisation qui ont été faits pour répondre à certaines questions que nous nous sommes posées, et qui&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/05/26/penser-modeliser-web-de-donnees-2/">Penser, modéliser (pour le web de données) &#8211; 2/2</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">Je donnais précédemment <a title="Penser, modéliser (pour le web de données) (1/2)" href="http://blog.sparna.fr/penser-modeliser-web-de-donnees-1/">quelques retours d&rsquo;expérience sur la création d&rsquo;une ontologie OWL de description des fonds d&rsquo;archives</a>, initiée par la société <a href="http://anaphore.eu/">Anaphore</a>. Je voulais ici mettre en avant quelques points précis de ce modèle, quelques-uns des choix de modélisation qui ont été faits pour répondre à certaines questions que nous nous sommes posées, et qui peuvent se retrouver dans d&rsquo;autres cas. Pour ceux qui s&rsquo;intéresseraient plus largement aux motifs de conception en OWL (&laquo;&nbsp;ontology design patterns&nbsp;&raquo;), je renvoie au site <a href="http://ontologydesignpatterns.org" target="_blank">ontologydesignpatterns.org</a> (dont je dois admettre que je ne me sers pas moi-même).</p>
<p><span id="more-712"></span></p>
<hr />
<h2>Réutiliser d&rsquo;autres vocabulaires/modèles</h2>
<p style="text-align: justify;">Le web de données permet de partager et relier des données sur le web, et il permet également de partager et relier des <em>modèles</em> de données. Réutiliser un modèle déjà existant pour exprimer ses données permet 1/ de bénéficier de la réflexion et des bonnes pratiques de modélisation qui ont sédimenté dans ce modèle et 2/ de rendre les données ainsi exprimées plus facilement compréhensibles et compatibles avec d&rsquo;autres applications.</p>
<p style="text-align: justify;">Il est donc tout à fait possible pour modéliser son domaine de &laquo;&nbsp;faire son marché&nbsp;&raquo; parmi les modèles déjà publiés, par exemple en parcourant l&rsquo;<a href="http://lov.okfn.org" target="_blank">annuaire du LOV (Linked Open Vocabularies)</a>. Trois modèles notamment sont réutilisables presque à tous les coups : <a href="http://lov.okfn.org/dataset/lov/details/vocabulary_foaf.html" target="_blank">FOAF</a> pour décrire des personnes, des organisations et des documents, <a href="http://lov.okfn.org/dataset/lov/details/vocabulary_dcterms.html" target="_blank">DCTerms</a> pour des métadonnées qui s&rsquo;appliquent largement (&laquo;&nbsp;creator&nbsp;&raquo;, &laquo;&nbsp;subject&nbsp;&raquo;, &laquo;&nbsp;publisher&nbsp;&raquo;, etc.), et <a href="http://lov.okfn.org/dataset/lov/details/vocabulary_skos.html" target="_blank">SKOS</a> (dont je re-mentionne au passage <a title="Traduction française de SKOS" href="http://blog.sparna.fr/traduction-francaise-skos/" target="_blank">la traduction française</a>) pour tout ce qui est liste contrôlée. Ces 3 vocabulaires sont d&rsquo;ailleurs <a href="http://lov.okfn.org/dataset/lov/stats/" target="_blank">les plus réutilisés dans l&rsquo;écosystème des modèles du web de données</a>.</p>
<p style="text-align: justify;">Outre ces 3 vocabulaires, nous avons également pour le modèle de description des fonds d&rsquo;archives réutilisé <a title="OWL Time" href="http://www.w3.org/TR/owl-time/" target="_blank">OWL Time</a> pour la représentation des dates et des intervalles temporels, <a title="wgs84" href="http://www.w3.org/2003/01/geo/wgs84_pos" target="_blank">wgs84_pos</a> pour l&rsquo;expression des latitudes/longitudes, et une seule propriété de <a title="Provenance ontology" href="http://www.w3.org/TR/prov-o/" target="_blank">PROV-O</a>, le modèle de description de la provenance récemment recommandé par le W3C (voir plus bas).</p>
<hr />
<h2>Qualifier les propriétés</h2>
<p style="text-align: justify;">Si vous lisez ceci je ne vous apprendrai rien en disant que RDF est un modèle de triplets, sujet-prédicat-objet (dans le cas contraire, voir <a href="http://fr.slideshare.net/thomasfrancart/rdf-une-introduction" target="_blank">cette introduction</a>). Donc en RDF on dit : &laquo;&nbsp;L&rsquo;entreprise Lafarge (sujet) possède un siège social (prédicat) en France (objet)&nbsp;&raquo;. Le problème, dans les descriptions archivistiques, c&rsquo;est que les entités sont décrites, par définition, au passé. Et que, dans le passé, il s&rsquo;en est passé des choses, justement, et que les informations relatives à une entité ont évolué. Il faut donc être capable, pour toutes les informations composant la description d&rsquo;une entité (nom, siège social, liens avec d&rsquo;autres entités&#8230;), de les qualifier avec des dates de validité (et pourquoi pas également des lieux de validité). C&rsquo;est-à-dire qu&rsquo;au lieu de dire &laquo;&nbsp;Lafarge possède un siège social en France&nbsp;&raquo;, on dit &laquo;&nbsp;Lafarge entretient une relation de siège social avec la France, relation qui était valable jusqu&rsquo;en avril 2014&Prime; (le cimentier Français ayant décidé de <a href="http://www.slate.fr/story/86137/siege-social-exil" target="_blank">déplacer son siège social en Suisse après sa fusion avec Holcim</a>).</p>
<p style="text-align: justify;">On dit qu&rsquo;on <em>réifie</em> la relation, on la transforme en ressource à part entière pour pouvoir exprimer des choses dessus. Autant dire que cela complexifie nettement le modèle. Mais c&rsquo;est le prix à payer pour structurer ces informations complexes. Dans la syntaxe RDF <a href="http://www.w3.org/TR/2014/REC-turtle-20140225/" target="_blank">Turtle</a>, on passe, sans qualification de dates, de :</p>
<pre>ex:Lafarge mdfa:pays ex:France .</pre>
<p>à ceci, avec une date de validité exprimée à la fois comme date structurée (&laquo;&nbsp;2014-04-11&Prime;) et à la fois comme chaine de caractères (&laquo;&nbsp;jusqu&rsquo;en avril 2014&Prime;) :</p>
<pre>ex:Lafarge mdfa:pays _:b .
_:b rdf:type mdfa:RelationLieu .
_:b mdfa:lieu ex:France .
_:b mdfa:dateValidite _:c .
_:c time:hasEnd _:d .
_:c rdfs:label "jusqu'en avril 2014" .
_:d time:inXSDDateTime "2014-04-11"^^xsd:date .</pre>
<p>Ou, en notation Turtle abbréviée :</p>
<pre>ex:Lafarge mdfa:pays [
  rdf:type mdfa:RelationLieu ;
  mdfa:lieu ex:France ;
  mdfa:dateValidite [
    time:hasEnd [ 
      time:inXSDDateTime "2014-04-11"^^xsd:date ;
    ] ;
  ] ;
  rdfs:label "jusqu'en avril 2014";
]</pre>
<hr />
<h2>Prendre en compte les valeurs textuelles</h2>
<p style="text-align: justify;">J&rsquo;espère qu&rsquo;aucun archiviste qui lit ceci ne sera vexé si je dis que les descriptions d&rsquo;archives actuelles ne sont pas très structurées. J&rsquo;entends par là que, de ce que j&rsquo;ai pu en voir, le contenu des descriptions est essentiellement textuel, et que peu de listes contrôlées ou de thesaurus sont utilisés pour structurer les valeurs que l&rsquo;on renseigne dans les différents champs de la description. D&rsquo;autre part, par la force des choses, certains éléments d&rsquo;information sont manquants, ou imprécis, et il peut être difficile ou impossible de leur donner une valeur contrôlée. Quelques exemples :</p>
<ul style="text-align: justify;">
<li>Pour indiquer la plage de date couverte par un fonds d&rsquo;archives : &laquo;&nbsp;1923-1932, 1936-1945 (manque 1933 à 1935)&nbsp;&raquo; (tiré de la norme <a href="http://www.icacds.org.uk/fr/ISAD%28G%29.pdf" target="_blank">ISAD(G)</a>);</li>
<li>Pour indiquer la modalité d&rsquo;entrée d&rsquo;un fonds aux services d&rsquo;archives : &laquo;&nbsp;Don de la Société ardoisière de l&rsquo;Anjou (exploitation de Renazé) aux Archives départementales de la Mayenne, 1969&Prime; (tiré de la norme <a href="http://www.icacds.org.uk/fr/ISAD%28G%29.pdf" target="_blank">ISAD(G)</a>);</li>
<li>Pour indiquer une source complémentaire à un fonds (un autre fonds d&rsquo;archives, géré dans un autre service, pouvant donner des informations supplémentaires sur les mêmes institutions/personnes/lieux) : &laquo;&nbsp;Archives départementales de la Savoie $ SA 243-244 : collèges d&rsquo;Avignon (dont celui d&rsquo;Annecy)&nbsp;&raquo;;</li>
</ul>
<p style="text-align: justify;">La création d&rsquo;un modèle de description des fonds d&rsquo;archives ayant pour objectif de structurer de telles descriptions se doit à la fois de les amener à plus de structuration pour améliorer l&rsquo;accès et la gestion de l&rsquo;information, et en même temps se doit de rester compatible avec les données telles qu&rsquo;elles sont aujourd&rsquo;hui; c&rsquo;est-à-dire qu&rsquo;il faut tout à la fois conserver la valeur de date &laquo;&nbsp;1923-1932, 1936-1945 (manque 1933 à 1935)&nbsp;&raquo; sans perte, et en même temps permettre de structurer cette valeur si possible, pour donner la possibilité de rechercher les fonds en utilisant une plage de dates que l&rsquo;on sélectionne dans des calendriers, ce qui n&rsquo;est pas possible si les informations de dates sont laissées textuellement.</p>
<p style="text-align: justify;">Cela a eu des conséquences à plusieurs endroits dans le modèle :</p>
<ul style="text-align: justify;">
<li>Première conséquence, lorsqu&rsquo;il est nécessaire d&rsquo;indiquer une <strong>référence</strong> à un autre fonds d&rsquo;archives, géré par un autre service d&rsquo;archives, il faut pouvoir y faire référence même si ce fonds ne possède pas (encore) d&rsquo;URI sur le web de données. RDF propose pour cela un mécanisme de <a href="http://fr.wikipedia.org/wiki/Ressource_anonyme" target="_blank">noeuds blancs, ou noeuds anonymes</a>, permettant d&rsquo;associer des informations à une ressource dont on ne connait pas l&rsquo;identifiant, ou qu&rsquo;on ne souhaite pas identifier avec une URI. Cependant ce n&rsquo;est pas vraiment ce que l&rsquo;on veut faire ici. Lorsque l&rsquo;on indique comme source complémentaire &laquo;&nbsp;Archives départementales de la Savoie $ SA 243-244 : collèges d&rsquo;Avignon (dont celui d&rsquo;Annecy)&nbsp;&raquo;, il ne s&rsquo;agit pas nécessairement du titre exact ou de la cote exacte d&rsquo;un autre fonds, mais simplement d&rsquo;une <em>référence textuelle </em>à quelque chose (peut-être à plusieurs choses d&rsquo;ailleurs) dont le titre par exemple, est différent de ce que l&rsquo;on indique en y faisant référence. Le modèle contient donc un mécanisme de <em>référence textuelle</em> pour faire référence à un fonds ou à une entité, qui permet :</li>
</ul>
<ol style="text-align: justify;">
<li>de rester compatible avec les valeurs textuelles existantes dans les données actuelles;</li>
<li>de pouvoir faire référence à un fonds ou à une entité dont on ne connait pas précisément le titre, l&rsquo;intitulé ou l&rsquo;URI;</li>
<li>de pouvoir travailler dans un mode &laquo;&nbsp;on exprime la relation d&rsquo;abord, et on essaie de résoudre la valeur contrôlée ensuite&nbsp;&raquo;;</li>
<li>de pouvoir travailler à un niveau de granularité et de finesse que l&rsquo;on choisit (trouver/sélectionner la bonne valeur contrôlée prend du temps, en rester à une référence pas/peu contrôlée est plus simple);</li>
</ol>
<p style="padding-left: 30px; text-align: justify;">Prenons l&rsquo;exemple d&rsquo;un fonds d&rsquo;archives qui serait la copie d&rsquo;un autre, et dont on veut indiquer l&rsquo;original :</p>
<p style="padding-left: 30px;">On peut indiquer cette référence sous forme de texte ainsi :</p>
<pre style="padding-left: 30px;">ex:fondsArchives_1 mdfa:aPourOriginal [
        mdfa:referenceTextuelle "collège Saint-Nicolas d'Annecy (1642-1785)." ;
]</pre>
<p style="padding-left: 30px;">Ou bien résoudre la référence, trouver la bonne URI contrôlée, et l&rsquo;indiquer :</p>
<pre style="padding-left: 30px;">ex:fondsArchives_1 mdfa:aPourOriginal [
        mdfa:referenceTextuelle "collège Saint-Nicolas d'Annecy (1642-1785)." ;
        mdfa:ressource ex:uriUnAutreFondArchives ;
]

</pre>
<ul>
<li style="text-align: justify;">Deuxième conséquence sur la <strong>description des dates</strong> : les dates mentionnées dans les descriptions de fonds sont soit : 1/ compliquées à décrire (&laquo;&nbsp;1923-1932, 1936-1945 (manque 1933 à 1935)&nbsp;&raquo;) ou 2/ imprécises (&laquo;&nbsp;milieu du XIXème siècle&nbsp;&raquo;). On ne peut donc pas se contenter de 2 propriétés de dates (début et fin), il faut également pouvoir associer à l&rsquo;information de date une description textuelle, et donner la possibilité, lorsque cela est possible/souhaitable, de structurer l&rsquo;information. Pour cela nous avons réutilisé l&rsquo;ontologie <a href="http://www.w3.org/TR/owl-time/">OWL Time</a> qui permet de décrire des intervalles de dates, et d&rsquo;associer à l&rsquo;intervalle lui-même, ou bien à une date de début ou de fin d&rsquo;intervalle, une description textuelle aussi bien qu&rsquo;une information de date contrôlée;</li>
</ul>
<p style="padding-left: 30px;">Premier exemple, pour décrire les dates de contenu d&rsquo;un fonds :</p>
<pre style="padding-left: 30px;">:fondsArchives_1 mdfa:datesContenu [
        rdfs:label "Du 1er janvier 1920 jusqu'aux environs de 1951"
        time:hasBeginning [ time:inXSDDateTime "1920-01-01"^^xsd:dateTime ] ;
        time:hasEnd [ time:inXSDDateTime "1951-01-01"^^xsd:dateTime ] ;
  ]
</pre>
<p style="padding-left: 30px;">Deuxième exemple, pour décrire les dates de naissance et de décès d&rsquo;une personne :</p>
<pre style="padding-left: 30px;">:personne_1 mdfa:datesExistence [
        rdfs:label "Date de naissance inconnue, mort le 23/10/1873"
        time:hasEnd [ time:inXSDDateTime "1873-10-23"^^xsd:dateTime ] ;
]</pre>
<ul style="padding-left: 30px;">
<li style="text-align: justify;">Troisième conséquence sur des <strong>propriétés tantôt littérales, tantôt contrôlées</strong>; RDF et OWL permettent, on a un peu tendance à l&rsquo;oublier, de déclarer des propriétés sans préciser si leur valeur sera une valeur contrôlée ou une valeur littérale. C&rsquo;est ce que fait SKOS par exemple, pour les propriétés de notes descriptives : une note SKOS peut être une valeur littérale, ou une référence à une entité représentant la note (voir le <a href="http://www.w3.org/TR/2009/NOTE-skos-primer-20090818/#secadvanceddocumentation">SKOS PRIMER</a>). De telles propriétés sont des <a href="http://www.w3.org/TR/owl-ref/#Header">Annotation Properties</a>. C&rsquo;est ce mécanisme que nous avons utilisé pour déclarer par exemple les propriétés correspondant au statut juridique, à la modalité d&rsquo;entrée ou au support d&rsquo;une ressource archivistique. Cela veut donc dire par exemple que, dans le cadre de cette ontologie, on laisse le choix de décrire les statuts juridiques comme une liste de valeurs contrôlées par un thesaurus en SKOS, ou bien comme une valeur textuelle libre.</li>
</ul>
<p style="padding-left: 30px;">On pourra donc dire tout aussi bien, pour indiquer la langue en utilisant une valeur contrôlée :</p>
<pre style="padding-left: 30px;">ex:notice_de_fonds_archives_1 dcterms:language &lt;http://lexvo.org/id/iso639-3/lat&gt; .</pre>
<p style="padding-left: 30px;">(on utilise dans cet exemple l&rsquo;identifiant de langue latine issu de <a href="http://www.lexvo.org/" target="_blank">Lexvo</a>, mais tout autre thesaurus contrôlé des langues peut faire l&rsquo;affaire).</p>
<p style="padding-left: 30px;">Ou bien ceci, en utilisant une description textuelle :</p>
<pre style="padding-left: 30px;">ex:notice_de_fonds_archives_1 dcterms:language "Latin. Ecriture insulaire 
(noter en particulier l'abréviation utilisée pour per)" .</pre>
<hr />
<h2>Spécialiser les entités</h2>
<p style="text-align: justify;">La vision du monde RDF et OWL comporte un présupposé majeur : il existerait dans le monde réel des &laquo;&nbsp;choses&nbsp;&raquo; que l&rsquo;on peut identifier de manière certaine, que l&rsquo;on peut isoler des autres, et auxquelles on peut donner une URI. C&rsquo;est une vision où le monde se &laquo;&nbsp;discretise&nbsp;&raquo; pour mieux se manipuler. Une manipulation du monde sans le langage. Mais il n&rsquo;est pas du tout sûr que des &laquo;&nbsp;entités&nbsp;&raquo; que l&rsquo;on puisse identifier et isoler existent ailleurs que dans notre tête (je crois que <a href="http://www.imdb.com/title/tt1817287/" target="_blank">Chomsky et Gondry parlent de ça</a>, si j&rsquo;ai bien compris, mais il faudrait que je revoie le film). Et une vision du monde qui ne prend pas en compte l&rsquo;aspect temporel. Alors que tout change. Qu&rsquo;on ne se baigne jamais deux fois dans la même eau. Que seul le changement est permanent. etc.</p>
<p style="text-align: justify;">Mais revenons à nos archives pour replacer ce problème en contexte : l&rsquo;archiviste décrit toujours une entité (comme une société par exemple) en regardant dans le rétroviseur, au passé. On ne décrit donc pas <em>&laquo;&nbsp;une société&nbsp;&raquo;</em>, on décrit <em>&laquo;&nbsp;la vie de la société&nbsp;&raquo;</em>. Est-on en droit de dire que l&rsquo;on parle de <em>la même</em> société lors de son immatriculation et 30 ans plus tard quand elle est devenue une multinationale ? Est-ce que la société Apple au début des années 1980 et la société Apple en 2014 sont <em>la même chose</em> ? peut-être pas. Ou pas complètement. Tout ce qui se rapporte à &laquo;&nbsp;Apple au début des années 1980&Prime; ne se rapporte pas forcément à &laquo;&nbsp;Apple en 2014&Prime;.</p>
<p style="text-align: justify;"><strong>On ne peut pas se contenter d&rsquo;assigner une seule URI unique pour identifier une entité dont on souhaite rendre compte de l&rsquo;évolution. Il nous en faut <em>plusieurs</em>.</strong> Et autant le point de départ de ce paragraphe nous a emmené dans des questions philosophiques théoriques, autant la solution pragmatique à ces questions est simple. Le modèle d&rsquo;ontologie proposé par le W3C pour décrire la &laquo;&nbsp;provenance&nbsp;&raquo; (on dirait plutôt l&rsquo; &laquo;&nbsp;origine&nbsp;&raquo; ou l&rsquo; &laquo;&nbsp;historique&nbsp;&raquo;, en français), <a href="http://www.w3.org/TR/prov-o/" target="_blank">PROV-O</a>, propose 2 notions intéressantes : la notion d&rsquo; <a href="http://www.w3.org/TR/prov-o/#Entity" target="_blank">&laquo;&nbsp;Entité&nbsp;&raquo;</a> (qui peut être ce qu&rsquo;on veut : &laquo;&nbsp;An entity is a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary.&nbsp;&raquo;) , et la notion de <a href="http://www.w3.org/TR/prov-o/#specializationOf" target="_blank">&laquo;&nbsp;spécialisation d&rsquo;entité&nbsp;&raquo;</a>. Et c&rsquo;est cette dernière notion qui va particulièrement nous intéresser : la &laquo;&nbsp;spécialisation&nbsp;&raquo; d&rsquo;une entité <em>&laquo;&nbsp;en possède toutes les caractéristiques et présente en plus certains aspects spécifiques de cette entité. En particulier la plage de validité (lifespan) de l&rsquo;entité qui est spécialisée contient les plages de validité de ses spécialisations. Des exemples de spécialisation peuvent être une période de temps ou un certain contexte.&nbsp;&raquo;</em></p>
<p style="text-align: justify;">On pourra donc par exemple avoir 1/ une URI pour désigner &laquo;&nbsp;Apple&nbsp;&raquo; en tant qu&rsquo;entité générique 2/ une URI pour chaque grande période de la vie de société, comme par exemple les 6 grandes périodes décrites dans l&rsquo;historique de la <a href="http://en.wikipedia.org/wiki/Apple_Inc.#History" target="_blank">page Wikipedia :</a></p>
<pre>ex:Apple_entre_1976_et_1980 prov:specializationOf ex:Apple_en_general .
ex:Apple_entre_1981_et_1989 prov:specializationOf ex:Apple_en_general .
ex:Apple_entre_1990_et_1999 prov:specializationOf ex:Apple_en_general .
etc...</pre>
<p style="text-align: justify;">La finesse du découpage de la vie de l&rsquo;entité en périodes historiques est laissée à l&rsquo;appréciation de chacun. Les ressources archivistiques peuvent alors se rapporter soit à l&rsquo;entité &laquo;&nbsp;générique&nbsp;&raquo;, soit à l&rsquo;une de ses &laquo;&nbsp;spécialisations&nbsp;&raquo;. Chacune des spécialisations portera ses caractéristiques propres (nombre d&rsquo;employés, siège social, organigramme, etc.). On gagne en finesse de description de l&rsquo;entité, et en finesse d&rsquo;indexation des ressources.</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/05/26/penser-modeliser-web-de-donnees-2/">Penser, modéliser (pour le web de données) &#8211; 2/2</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2014/05/26/penser-modeliser-web-de-donnees-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Penser, modéliser (pour le web de données) (1/2)</title>
		<link>https://blog.sparna.fr/2014/05/12/penser-modeliser-web-de-donnees-1/</link>
		<comments>https://blog.sparna.fr/2014/05/12/penser-modeliser-web-de-donnees-1/#comments</comments>
		<pubDate>Mon, 12 May 2014 17:14:04 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[archives]]></category>
		<category><![CDATA[modélisation]]></category>
		<category><![CDATA[ontologie]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=560</guid>
		<description><![CDATA[<p>J&#8217;ai récemment eu le plaisir de collaborer avec la société Anaphore à la mise au point d&#8217;un modèle d&#8217;ontologie pour décrire des fonds d&#8217;archives. S&#8217;il ne m&#8217;appartient pas de dévoiler le contenu de ce modèle qui sera je l&#8217;espère rendu public dans quelques semaines, je voulais donner quelques retours d&#8217;expérience sur le processus de modélisation&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/05/12/penser-modeliser-web-de-donnees-1/">Penser, modéliser (pour le web de données) (1/2)</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">J&rsquo;ai récemment eu le plaisir de collaborer avec la société <a href="http://labs.anaphore.eu/les-travaux-recents-danaphore/" target="_blank">Anaphore</a> à la mise au point d&rsquo;un modèle d&rsquo;ontologie pour décrire des <a href="http://fr.wikipedia.org/wiki/Fonds_d%27archives" target="_blank">fonds d&rsquo;archives</a>. S&rsquo;il ne m&rsquo;appartient pas de dévoiler le contenu de ce modèle qui sera je l&rsquo;espère rendu public dans quelques semaines, je voulais donner quelques retours d&rsquo;expérience sur le processus de modélisation lui-même, ainsi que sur quelques motifs de conception que nous avons mis en oeuvre (dans un second article). <span id="more-560"></span></p>
<h2>Pour quoi modélise-t-on ?</h2>
<p style="text-align: justify;">La question n&rsquo;est pas aussi simple qu&rsquo;il n&rsquo;y parait, et il y a tout à gagner à mettre à plat dès le début du travail de modélisation la distinction entre :</p>
<ul style="text-align: justify;">
<li>un modèle/format de travail;</li>
<li>un modèle/format d&rsquo;échange;</li>
<li>et un modèle conceptuel;</li>
</ul>
<p style="text-align: justify;">Est-ce que l&rsquo;on cherche à définir un modèle de travail qui sera utilisé <em>à l&rsquo;intérieur</em> d&rsquo;un système logiciel (le schéma des tables de sa base de données, pour faire simple) ? ou bien est-ce qu&rsquo;on cherche à définir un modèle d&rsquo;échange qui sera fait pour publier les données <em>à l&rsquo;extérieur</em> du système logiciel, sur le web de données ? La distinction est empruntée à <a href="http://www.utc.fr/~bachimon" target="_blank">Bruno Bachimont</a> (dans <a href="http://www.lavoisier.fr/livre/documentation/ingenierie-des-connaissances-et-des-contenus-le-numerique-entre-ontologies-et-documents/bachimont/descriptif-9782746213692" target="_blank"><em>Ingénierie des connaissances et des contenus : le numérique entre ontologies et documents</em></a> (Lavoisier, 2007)) :</p>
<blockquote><p>&laquo;&nbsp;Les formats d’échange permettent de rendre lisibles par différentes applications les mêmes données. Les formats de travail permettent à une application d’effectuer tous les traitements nécessaires et de créer les structures à cet effet.&nbsp;&raquo;</p></blockquote>
<p style="text-align: justify;">Ou bien encore, et c&rsquo;est un peu différent, est-ce que l&rsquo;on cherche à esquisser un modèle conceptuel du domaine, c&rsquo;est-à-dire se mettre d&rsquo;accord sur les principales entités de ce domaine et les relations qu&rsquo;elles entretiennent entre elles, sans rentrer dans les détails d&rsquo;implémentation ? <a href="http://www.bnf.fr/fr/professionnels/modelisation_ontologies/a.modele_FRBR.html#SHDC__Attribute_BlocArticle0BnF" target="_blank">FRBR</a> par exemple est un modèle conceptuel, et <a href="http://www.bnf.fr/fr/professionnels/rda/s.rda_objectifs.html" target="_blank">RDA</a> est une implémentation de FRBR en tant que modèle d&rsquo;échange; et rien n&rsquo;implique qu&rsquo;un logiciel compatible avec ce format d&rsquo;échange l&rsquo;utilise effectivement en tant que format de travail; il y a même toutes les chances que non.</p>
<p style="text-align: justify;">La distinction entre ces 3 objectifs est importante car chacun va apporter ses contraintes : par exemple, faire le modèle de travail d&rsquo;une application implique de prendre en compte des contraintes de facilité de saisie ou de navigation dans les données pour l&rsquo;utilisateur, ou de traçabilité des informations (quel utilisateur a créé quoi). Faire un modèle de publication pour le web de données amène des contraintes de facilité de compréhension, et de réutilisation du modèle. Faire un modèle de domaine ne demande pas de rentrer dans le détail de chaque propriété et de chaque relation, mais d&rsquo;être tout à fait clair sur la définition de chaque entité.</p>
<p style="text-align: justify;"><strong>Retour d&rsquo;expérience numéro 1 : déterminer précisément l&rsquo;objectif du modèle : modèle interne à une application, modèle de publication, ou modèle conceptuel.</strong></p>
<h2>&laquo;&nbsp;Be real&nbsp;&raquo;</h2>
<p style="text-align: justify;">Les modèles, les ontologies et tous ces bazars conceptuels ont ce côté rassurant des arrières-mondes que l&rsquo;on fabrique pour s&rsquo;échapper du douloureux réel. Tant que l&rsquo;on reste dans le modèle, tout va bien, mais quand on commence à regarder les données, les vraies données qui existent réellement pour de vrai, ça fait toujours un peu mal : on a oublié de prendre en compte telle colonne dans le fichier de données, telle autre contient du texte alors qu&rsquo;on avait prévu une référence contrôlée, etc. Pour paraphraser la boutade philosophico-geek &laquo;&nbsp;le réel, c&rsquo;est ce qui fait mal quand on éteint l&rsquo;ordinateur&nbsp;&raquo;, on pourrait dire &laquo;&nbsp;les données, c&rsquo;est ce qui fait mal quand on a fini le modèle&nbsp;&raquo;. &laquo;&nbsp;Reality is broken&nbsp;&raquo;, par essence.</p>
<p style="text-align: justify;">Non content de faire un modèle avec des boîtes et des flèches, il faut travailler le plus tôt possible dans le processus de modélisation sur les vraies données. Les exemples de données existantes exprimées suivant le modèle conçu doivent faire partie des livrables, autant que le modèle lui-même.</p>
<p style="text-align: justify;"><strong>Retour d&rsquo;expérience numéro 2 : travailler sur des exemples de vraies données, en les exprimant dans le modèle cible.</strong></p>
<h2>Modéliser c&rsquo;est communiquer</h2>
<p style="text-align: justify;">Tous les modèles sont imparfaits, on a beau le savoir il faut se le redire sans cesse pour ne pas oublier la réalité que ce modèle tente de capturer. Ce n&rsquo;est pas la réalité qui est cassée (&laquo;&nbsp;reality is broken&nbsp;&raquo;), ce sont nos modèles. Ou plutôt, la réalité est cassée <em>parce qu&rsquo;on en fait des modèles</em>.</p>
<p style="text-align: justify;">Tous les modèles sont imparfaits, car, malgré toutes les précautions que vous aurez prises pour faire émerger une objectivité, celle-ci ne restera finalement que votre vision du monde, la vôtre personnellement, ou celle du groupe de gens qui ont participé à sa mise au point. Eternelle subjectivité. Et c&rsquo;est précisément parce que votre modèle est subjectif qu&rsquo;il faut être capable de l&rsquo;expliciter, de l&rsquo;expliquer, de le communiquer aux autres. Le modèle doit servir de moyen, de support à la communication de votre vision du domaine métier. Il doit permettre d&rsquo;instaurer un dialogue. Eternelle inter-subjectivité. Dès lors, il faut s&rsquo;appliquer à rendre le modèle communicable :</p>
<ul style="text-align: justify;">
<li>99% des modèles OWL que l&rsquo;on trouve sur le web utilisent des URIs et des libellés en anglais. Mais pourquoi ne pas faire un modèle en français, si on le voit comme un support de communication à destination d&rsquo;acteurs francophones ? c&rsquo;est le parti que nous avons pris avec Anaphore. Pensons local avant de penser universel, il sera toujours temps, le jour où le modèle aura un succès international, de le traduire ;</li>
<li>un fichier d&rsquo;ontologie OWL ne suffit pas; c&rsquo;est incompréhensible. Faites des diagrammes, des schémas, dès le début du processus de modélisation, pour vous mettre d&rsquo;accord et pouvoir parler du modèle. La communication autour du modèle commence dès sa conception ;</li>
<li>c&rsquo;est une évidence, mais documentez les classes et les propriétés du modèle, et le modèle lui-même, en suivant <a href="http://lov.okfn.org/dataset/lov/Recommendations_Vocabulary_Design.pdf" target="_blank">les pratiques de bon sens documentées dans le LOV </a>;</li>
<li>utilisez les outils de génération automatique de documentation à partir du fichier OWL, comme <a href="http://www.essepuntato.it/lode" target="_blank">LODE</a> ou <a href="http://ontorule-project.eu/parrot/parrot" target="_blank">Parrot</a>. Nous avons utilisé LODE pour son rendu propre et la possibilité d&rsquo;intégrer les images des diagrammes dans la documentation ;</li>
<li>prévoyez un moyen de recevoir du feedback une fois votre modèle publié; a minima une adresse e-mail, ou une mailing-list, un forum, un formulaire de suggestion, un hashtag, ce que vous voulez, mais permettez qu&rsquo;un dialogue s&rsquo;instaure.</li>
</ul>
<p style="text-align: justify;"><strong>Retour d&rsquo;expérience numéro 3 : penser dès le départ le modèle comme un moyen de communication, autant qu&rsquo;un moyen de structurer les informations dans un système informatique.</strong></p>
<h2>Un arbre plutôt que du marbre</h2>
<p style="text-align: justify;">Si vous vous placez dans la perspective de publier un modèle OWL sur le web, il faut envisager cela à la fois, bien sûr, comme l&rsquo;aboutissement d&rsquo;un travail de réflexion, mais aussi comme le début d&rsquo;un processus d&rsquo;évolution. Ne pensez pas que votre modèle va être figé une fois publié. Si, comme évoqué précédemment, vous avez tenu compte de la réalité des données, et que vous avez prévu les moyens de dialogue et de feedback, alors votre modèle évoluera en tenant compte des évolutions dans l&rsquo;expression des données et des retours de la communauté. Soyez donc prêt à prendre en compte ces retours, en prévoyant pourquoi pas un mécanisme de versioning, et en établissant clairement le processus de mise à jour; sans faire l&rsquo;erreur de <a href="http://xmlns.com/foaf/spec/#sec-evolution" target="_blank">FOAF</a> qui a incorporé un numéro de version dans son URI, en étant maintenant incapable de la changer sans embêter tous ses utilisateurs !</p>
<blockquote><p>&laquo;&nbsp;&#8230;the technical namespace ID [of FOAF] remains fixed and includes the original value of &laquo;&nbsp;0.1&nbsp;&raquo;. It long ago became impractical to update the namespace URI without causing huge disruption to both producers and consumers of FOAF data. We are left with the digits &laquo;&nbsp;0.1&nbsp;&raquo; in our URI. This stands as a warning to all those who might embed metadata in their vocabulary identifiers.&nbsp;&raquo;</p></blockquote>
<p style="text-align: justify;">Bref, pensez à votre modèle comme quelque chose de vivant, un arbre plutôt que quelque chose de figé dans le marbre. Une certaine automatisation dans son processus de publication sur le web peut donc être bienvenue.</p>
<p style="text-align: justify;">Evidemment, si votre modèle est un modèle de travail interne pour une solution logicielle, son évolution est moins aisée, la problématique est différente.</p>
<p style="text-align: justify;"><strong>Retour d&rsquo;expérience numéro 4 : penser à l&rsquo;évolution du modèle une fois sa mise en ligne, ne pas hésiter à le faire évoluer.</strong></p>
<p style="text-align: justify;">Le second volet de ces quelques réflexions, dont le titre &laquo;&nbsp;Penser, modéliser&nbsp;&raquo; s&rsquo;inspire du livre &laquo;&nbsp;<a href="http://livre.fnac.com/a1417192/Georges-Perec-Penser-classer" target="_blank">Penser, classer</a>&nbsp;&raquo; de Georges Perec, sera consacré aux motifs de conception (design pattern) utilisés pour construire ce modèle de description des fonds d&rsquo;archives.</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2014/05/12/penser-modeliser-web-de-donnees-1/">Penser, modéliser (pour le web de données) (1/2)</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2014/05/12/penser-modeliser-web-de-donnees-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ontologie, Thesaurus et Taxonomie sur le web de données</title>
		<link>https://blog.sparna.fr/2013/12/07/ontologie-thesaurus-taxonomie-web-de-donnees/</link>
		<comments>https://blog.sparna.fr/2013/12/07/ontologie-thesaurus-taxonomie-web-de-donnees/#comments</comments>
		<pubDate>Sat, 07 Dec 2013 22:11:25 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[Ontologies]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[SKOS]]></category>
		<category><![CDATA[Thesaurus]]></category>
		<category><![CDATA[ontologie]]></category>
		<category><![CDATA[taxonomie]]></category>
		<category><![CDATA[thesaurus]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=517</guid>
		<description><![CDATA[<p>Trois espèces d&#8217;animaux différentes se rencontrent principalement dans les steppes des langages de représentation des connaissances du web de données. Les ontologies, les thesaurus et les taxonomies, si elles partagent l&#8217;organisation hiérarchiques de concepts entre eux, n&#8217;ont pas les mêmes usages, ni les mêmes objectifs. L&#8217;ontologie est faite pour décrire le monde tel qu&#8217;il est;&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2013/12/07/ontologie-thesaurus-taxonomie-web-de-donnees/">Ontologie, Thesaurus et Taxonomie sur le web de données</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">Trois espèces d&rsquo;animaux différentes se rencontrent principalement dans les steppes des langages de représentation des connaissances du web de données. Les ontologies, les thesaurus et les taxonomies, si elles partagent l&rsquo;organisation hiérarchiques de concepts entre eux, n&rsquo;ont pas les mêmes usages, ni les mêmes objectifs. L&rsquo;ontologie est faite pour décrire le monde tel qu&rsquo;il est; le thesaurus est fait pour faciliter l&rsquo;accès à des contenus; la taxonomie est fait pour classer des ressources dans des dossiers, des catégories. Les systèmes d&rsquo;accès aux contenus, aux données ou aux connaissances, combinent et articulent ces 3 systèmes d&rsquo;organisation pour décrire le monde, indexer, et catégoriser les contenus.</p>
<p style="text-align: justify;"><span id="more-711"></span></p>
<table border="0">
<tbody>
<tr>
<td style="width: 25%;"></td>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;"><strong>Ontologie</strong></span></td>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;"><strong>Thesaurus</strong></span></td>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;"><strong>Taxonomie</strong></span></td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Définition</span></td>
<td style="width: 25%;">La définition couramment citée, &laquo;&nbsp;une ontologie est la spécification formelle d&rsquo;une conceptualisation partagée&nbsp;&raquo;, n&rsquo;éclairera guère le profane. De façon plus opérationnelle, l&rsquo;ontologie cherche à décrire de façon formelle un domaine de connaissance, en identifiant les types d&rsquo;objets de ce domaine, leurs propriétés et leurs relations.</td>
<td style="width: 25%;"> &laquo;&nbsp;Liste organisée de termes contrôlées et normalisés (descripteurs et non-descripteurs) servant à l&rsquo;indexation des documents et des questions dans un système documentaire&nbsp;&raquo; (D. Degez, D. Ménillet, Thesauroglossaire des langages documentaires)</td>
<td style="width: 25%;">&laquo;&nbsp;Taxonomy&nbsp;&raquo; est très utilisé par les anglo-saxons pour désigner la &laquo;&nbsp;science de la classifcation&nbsp;&raquo; et par extension tout système de classification/catégorisation.</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Contient&#8230;</span></td>
<td style="width: 25%;">Des classes, des propriétés, et des règles logiques formelles. Eventuellement des instances de classe.</td>
<td style="width: 25%;">Des concepts et des termes, organisés entre eux, avec leurs libellés, leurs traductions, leurs synonymes, et leurs descriptions/définitions.</td>
<td style="width: 25%;">des catégories organisés hiérarchiquement</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Utilisation</span></td>
<td style="width: 25%;">Sert à <strong>instancier</strong> et à <strong>raisonner</strong></td>
<td style="width: 25%;">Sert à <strong>indexer</strong> des contenus ou des ressources avec des mots-clés et à les <strong>rechercher </strong>(avec les mêmes mots-clés)</td>
<td style="width: 25%;">Sert à <strong>classifier</strong>, à ranger des contenus ou des ressources</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Niveau de formalisme logique</span></td>
<td style="width: 25%;">Très formel (formalisme mathématique)</td>
<td style="width: 25%;">Peu formel</td>
<td style="width: 25%;">Moyennement formel (peut être plus formel qu&rsquo;un thesaurus, dans le sens où la hiérarchie des entrées peut suivre certaines contraintes.)</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Niveau de proximité avec la langue naturelle</span></td>
<td style="width: 25%;">Très éloigné de la langue naturelle (utilise des identifiants techniques pour s&rsquo;abstraire du langage naturel)</td>
<td style="width: 25%;">Proche de la langue naturelle (donne des équivalents linguistiques de chaque entrée, des traductions dans d&rsquo;autres langues)</td>
<td style="width: 25%;">Pas particulièrement en lien avec la langue naturelle.</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Types de relations utilisées</span></td>
<td style="width: 25%;">
<ul>
<li>Inclusion (classe / sous-classe);</li>
<li>Opérations ensemblistes : union, intersection, exclusion;</li>
<li>Caractéristiques des propriétés : domaine, ensemble d&rsquo;arrivée, transitivité, propriétés inverses, etc.</li>
</ul>
</td>
<td style="width: 25%;">Hiérarchiques et associatives; éventuellement relations d&rsquo;alignement</td>
<td style="width: 25%;"> Hiérarchiques seulement</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;"> Exemple</span></td>
<td style="width: 25%;">&laquo;&nbsp;Voiture&nbsp;&raquo; est un type particulier de &laquo;&nbsp;Véhicule terrestre&nbsp;&raquo;, lui-même un type particulier de &laquo;&nbsp;Véhicule&nbsp;&raquo;. La propriété &laquo;&nbsp;milieu de déplacement du véhicule&nbsp;&raquo; (terre, air, mer, espace) s&rsquo;applique aux &laquo;&nbsp;Véhicules&nbsp;&raquo;; les &laquo;&nbsp;Véhicules terrestres&nbsp;&raquo; sont tous les &laquo;&nbsp;Véhicules&nbsp;&raquo; dont &laquo;&nbsp;milieu de déplacement&nbsp;&raquo; vaut &laquo;&nbsp;terre&nbsp;&raquo;.</td>
<td style="width: 25%;">Le terme &laquo;&nbsp;Voiture&nbsp;&raquo; est un terme spécifique de &laquo;&nbsp;Véhicule terrestre&nbsp;&raquo;, lui-même spécifique de &laquo;&nbsp;Véhicule&nbsp;&raquo;. Le terme &laquo;&nbsp;Voiture&nbsp;&raquo; peut aussi se dire &laquo;&nbsp;Automobile&nbsp;&raquo;, ou &laquo;&nbsp;Bagnole&nbsp;&raquo;. En anglais on dira &laquo;&nbsp;Car&nbsp;&raquo;. Si on s&rsquo;intéresse à &laquo;&nbsp;Voiture&nbsp;&raquo; on peut également allez voir le terme &laquo;&nbsp;Autoroute&nbsp;&raquo;.</td>
<td style="width: 25%;">La catégorie &laquo;&nbsp;Véhicules terrestre&nbsp;&raquo; est une sous-catégories des &laquo;&nbsp;Véhicules&nbsp;&raquo;. &laquo;&nbsp;Voiture&nbsp;&raquo; est rangée dans la catégorie des &laquo;&nbsp;Véhicules terrestre&nbsp;&raquo;.</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;"> Un exemple</span></td>
<td style="width: 25%;">L&rsquo;ontologie <a href="http://xmlns.com/foaf/spec/">FOAF</a> définit des classes et des propriétés pour décrire des personnes.</td>
<td style="width: 25%;">Le thesaurus <a href="http://www.eionet.europa.eu/gemet/">GEMET</a> (General Multilingual Environmental Thesaurus) est un thesaurus multilingue (+ de 30 langues) développé par l&rsquo;agence européenne de l&rsquo;énergie et disponible gratuitement.</td>
<td style="width: 25%;">Les taxonomies publiées par l&rsquo;<a href="http://www.iptc.org/site/NewsCodes/View_NewsCodes">IPTC</a> servent à catégoriser les articles de news.Les <a href="http://en.wikipedia.org/wiki/Help:Category">catégories de Wikipedia</a> servent à organiser les entrées de Wikipedia.</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Standard de représentation sur le web de données</span></td>
<td style="width: 25%;"><a href="http://www.w3.org/TR/owl2-overview/">OWL</a></td>
<td style="width: 25%;"><a href="http://sparna.fr/skos/SKOS-traduction-francais.html">SKOS</a></td>
<td style="width: 25%;"> <a href="http://sparna.fr/skos/SKOS-traduction-francais.html">SKOS</a></td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">A utiliser si&#8230;</span></td>
<td style="width: 25%;">Si vous avez besoin de décrire les choses telles qu&rsquo;elles sont, et pas simplement d&rsquo;indexer des contenus, et que vous avez besoin de décrire précisément les caractéristiques de chaque chose, alors c&rsquo;est une ontologie qu&rsquo;il vous faut. (Typiquement, projets de capitalisation de connaissance)</td>
<td style="width: 25%;">Si vous voulez mettre des mots-clés sur des contenus, et pouvoir rechercher avec ces mêmes mots-clés, vous avez besoin d&rsquo;un thesaurus.Vous pouvez vouloir utiliser un thesaurus en combinaison avec un moteur de recherche plein-texte pour améliorer sa pertinence.</td>
<td style="width: 25%;">Si vous avez besoin de ranger des documents dans des dossiers, de mettre au point une recherche à facettes, alors c&rsquo;est d&rsquo;une taxonomie dont vous avez besoin.</td>
</tr>
<tr>
<td style="width: 25%; text-align: center;"><span style="font-size: medium;">Mais encore&#8230;</span></td>
<td style="width: 25%;">Une ontologie n&rsquo;est pas une anthologie.</td>
<td style="width: 25%;"> Un thesaurus n&rsquo;est pas un dinosaure.</td>
<td style="width: 25%;"><em> (là je n&rsquo;ai pas l&rsquo;inspiration&#8230; une idée ?)</em></td>
</tr>
</tbody>
</table>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=5b4029c5-9f0b-4a3b-ad39-28b1462ef735" alt="" /></div>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2013/12/07/ontologie-thesaurus-taxonomie-web-de-donnees/">Ontologie, Thesaurus et Taxonomie sur le web de données</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2013/12/07/ontologie-thesaurus-taxonomie-web-de-donnees/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Bénéfices clés des technologies du web de données 2/2 – absence de modèle, raisonnement</title>
		<link>https://blog.sparna.fr/2012/10/25/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/</link>
		<comments>https://blog.sparna.fr/2012/10/25/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/#comments</comments>
		<pubDate>Thu, 25 Oct 2012 08:41:20 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[avantages]]></category>
		<category><![CDATA[ontologies]]></category>
		<category><![CDATA[raisonnement]]></category>
		<category><![CDATA[semantic web]]></category>
		<category><![CDATA[Triplestore]]></category>
		<category><![CDATA[vocabulaires]]></category>
		<category><![CDATA[web de données]]></category>
		<category><![CDATA[web of data]]></category>
		<category><![CDATA[web sémantique]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=227</guid>
		<description><![CDATA[<p>Dans la première partie de cette étude sur les avantages des technologies du web de données &#8211; que je valorise au sein de la société Sparna, j&#8217;avais étudié ce qui fait leur essence, leur &#171;&#160;principe actif&#160;&#187;, c&#8217;est-à-dire les mécanismes de publication de données dans un environnement distribué. Je continue ici l&#8217;analyse sur deux autres aspects&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/10/25/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/">Bénéfices clés des technologies du web de données 2/2 – absence de modèle, raisonnement</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;">Dans la <a title="Bénéfices clés des technologies du web de données 1/2 – l’environnement distribué" href="http://blog.sparna.fr/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/">première partie</a> de cette étude sur les avantages des technologies du web de données &#8211; que je valorise au sein de la société <a href="http://sparna.fr">Sparna</a>, j&rsquo;avais étudié ce qui fait leur essence, leur &laquo;&nbsp;principe actif&nbsp;&raquo;, c&rsquo;est-à-dire les mécanismes de publication de données dans un environnement distribué. Je continue ici l&rsquo;analyse sur deux autres aspects qui font l&rsquo;originalité de ces approches : <strong>l&rsquo;absence de modèle de données</strong> et <strong>les possibilités offertes par le raisonnement</strong>.</p>
<p>&nbsp;</p>
<h2>Le schéma de données, quel schéma de données ?</h2>
<p>&nbsp;</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Facilite les phases de prototypage</span></p>
<p style="text-align: justify;">Dans les approches à base de RDF+SPARQL, on n&rsquo;a pas besoin d&rsquo;avoir un schéma de données pour commencer à travailler. <span class="pullquote">On a juste besoin des données. Le schéma peut venir après.</span> <em>&laquo;&nbsp;Data first, model after&nbsp;&raquo;</em>. C&rsquo;est une approche &laquo;&nbsp;bottom-up&nbsp;&raquo;, là où les SGBD+SQL ont nécessairement une approche &laquo;&nbsp;top-down&nbsp;&raquo; : &laquo;&nbsp;model first, data after&nbsp;&raquo;. Cela permet un <strong>prototypage rapide des projets</strong> : plus besoin d&rsquo;attendre d&rsquo;avoir défini un modèle de base de données avant de faire une première requête.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Intégration de données hétérogènes</span></p>
<p style="text-align: justify;">Ces absence de schéma, de modèle, dans les bases de données RDF (triplestores) donne la possibilité d&rsquo;y intégrer des données :</p>
<ul style="text-align: justify;">
<li><strong>hétérogènes</strong> : exprimées avec des modèles différents, en ayant ensuite la possibilité de les réconcilier sur un modèle unique si besoin;</li>
<li><strong>incomplètes</strong> : avec des valeurs manquantes, en ayant la possibilité de repérer ces objets anormaux si besoin;</li>
<li><strong>incohérentes</strong> : venant de sources différentes qui donnent des informations contradictoires, en ayant la possibilité de repérer ces incohérences et de les corriger si besoin;</li>
</ul>
<p style="text-align: justify;"><span style="text-decoration: underline;">Une infinité de points de vue</span></p>
<p style="text-align: justify;">Zéro schéma signifie aussi une multiplicité de schémas. Les technologies sémantiques permettent d&rsquo;exprimer les mêmes données suivant plusieurs schémas dans la même base, offrant alors plusieurs &laquo;&nbsp;points de vue&nbsp;&raquo;, plusieurs façons de voir les mêmes données. Et ceci automatiquement avec de l&rsquo;inférence OWL. Chaque application consommant les données pourra alors s&rsquo;appuyer sur le schéma qu&rsquo;elle comprend. <strong>On favorise ainsi l&rsquo;interopérabilité entre applications</strong>. Un exemple ? le standard de représentation <a href="www.w3.org/2004/02/skos/">SKOS</a> permet une représentation simple de systèmes d&rsquo;organisation de connaissances (thesaurus, arbres de classement, &#8230;) , à base de &laquo;&nbsp;Concept&nbsp;&raquo; qui portent des &laquo;&nbsp;prefLabels&nbsp;&raquo; (libellés préférentiels). C&rsquo;est un format d&rsquo;échange commode, mais inadapté à la représentation de bases de connaissances riches, comme une base de personnes. Il est tout à fait possible de dire &laquo;&nbsp;ce que tu appelles une Personne dans ton système je l&rsquo;appelle également un Concept SKOS, et la propriété <em>foaf:name</em> que tu utilises correspond à la propriété <em>skos:prefLabel</em> SKOS&nbsp;&raquo;, pour ainsi obtenir une &laquo;&nbsp;vue&nbsp;&raquo; SKOS d&rsquo;une base de personnes.</p>
<p style="text-align: justify;">Ce faisant, on permet également de <strong>séparer les métadonnées initiales des contenus (riches et compliquées) des catégories de ces contenus pour la diffusion</strong>, en fonction des supports ou des publics (souvent plus simples et liées à l&rsquo;usage). L&rsquo;exemple classique est l&rsquo;hôtel rangé dans une catégorie &laquo;&nbsp;bon marché&nbsp;&raquo; alors que ses métadonnées initiales sont plus complexes : prix par nuit, nombre d&rsquo;étoiles, labels, piscine, etc.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Flexibilité maximale</span></p>
<p style="text-align: justify;">Le fait que le schéma ne contraigne pas les données donne une <strong>flexibilité et une évolutivité importante au système</strong>. On peut rajouter, supprimer, modifier un attribut ou une classe à la volée. <span class="pullquote">On peut modifier le schéma, sans toucher aux données. On peut même changer de schéma facilement.</span> Prenons un cas d&rsquo;intégration de données : une application intégrant une source de données externe avec ses propres données, et se retrouvant confronté au cas où cette source de données change de format et de modèle :</p>
<ul>
<li style="text-align: justify;">dans le monde du XXème siècle, en SGBD+SQL, confronté à un tel cas on doit 1/ modifier le parsing des données qui ont changé, 2/ modifier les tables du système pour prendre en compte ce nouveau format, 3/ modifier les requêtes de l&rsquo;applicatif.</li>
<li style="text-align: justify;">Dans le monde du XXIème siècle, en RDF+SPARQL : 1/ pas de parsing à modifier (les données arrivent toujours en RDF), 2/ pas de schema à modifier (il n&rsquo;y en a pas) et 3/ il faut toujours modifier les requêtes de l&rsquo;applicatif&#8230; plus qu&rsquo;un 1/3 du travail. Et encore, il est possible, le temps de modifier les requêtes, d&rsquo;ajouter de l&rsquo;inférence pour recréer les données dans l&rsquo;ancien modèle à partir du nouveau, de façon à ce que les requêtes continuent à répondre.</li>
</ul>
<p>&nbsp;</p>
<h2>Le raisonnement, ou les manipulations automatiques des données</h2>
<p style="text-align: justify;"><span style="text-decoration: underline;">Réconciliation</span></p>
<p style="text-align: justify;">Le raisonnement est la capacité des outils RDF à déduire automatiquement de nouvelles informations à partir des informations existantes. Notons bien que ces capacités de raisonnement ne sont ni proposées par tous les outils RDF, ni forcément utiles dans tous les contextes. Elles vont par exemple permettre de <strong>réconcilier les données hétérogènes sur un modèle commun</strong> : &laquo;&nbsp;Ensemble des personnes = ensemble des contacts qui viennent de mon répertoire de téléphone + ensemble de mes contacts dans les réseaux sociaux&nbsp;&raquo;.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Classification</span></p>
<p style="text-align: justify;">Le même mécanisme est utilisé pour des besoins plus proches de la classification (&laquo;&nbsp;repurposing&nbsp;&raquo; de contenu), pour <strong>définir les ensembles d&rsquo;objets dans des points de vue multiples</strong>, tel qu&rsquo;évoqué plus haut. On peut par exemple avoir d&rsquo;un côté l&rsquo;ensemble des objets &laquo;&nbsp;Hébergements&nbsp;&raquo;, et de l&rsquo;autre l&rsquo;ensemble des objets &laquo;&nbsp;Hôtels pas chers&nbsp;&raquo; défini comme &laquo;&nbsp;l&rsquo;ensemble des objets Hébergements qui sont de type hôtel et ont un prix par nuit inférieur à 60 euros&nbsp;&raquo;. Le deuxième ensemble sera calculé à partir du premier, automatiquement.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Inférence</span></p>
<p style="text-align: justify;">L&rsquo;inférence permet de <strong>précalculer des liens ou des données qui facilitent l&rsquo;écriture des requêtes et améliorent les temps de réponse</strong>. Le total des buts marqués par une équipe de football dans une compétition est calculé comme la somme de tous les buts marqués par cette équipe dans les matchs de cette compétition. La donnée est calculée une fois, et peut ensuite être présentée directement sur la page de l&rsquo;équipe, il n&rsquo;y a pas de calcul à faire au moment de l&rsquo;affichage (voir <a href="http://news.bbc.co.uk/sport2/hi/football/world_cup_2010/groups_and_teams/team/france">le site de la coupe du monde de la BBC</a>, réalisé à partir des technologies du web de données en utilisant le raisonnement).</p>
<p style="text-align: justify;"><span style="text-decoration: underline;">Consistance</span></p>
<p style="text-align: justify;">L&rsquo;inférence est aussi ce qui permet de contrôler la consistance par rapport au modèle de données. Car si en RDF il est possible de ne pas avoir de schéma, dans les cas où il y en a un, <strong>le moteur d&rsquo;inférence sera capable de déterminer si les données sont consistantes par rapport à ce schéma</strong> ou non.</p>
<h2 style="text-align: justify;">Conclusion&#8230;</h2>
<p style="text-align: justify;">Ce travail d&rsquo;analyse partiel est une synthèse des expériences acquises avec ces technologies, et des lectures spécialisées (le forum <a href="http://answers.semanticweb.com" target="_blank">answers.semanticweb.com</a> contient beaucoup de réponses intéressantes). Il doit permettre de bien <strong>situer les avantages de ces technos pour ne pas en faire une évangélisation aveugle</strong>, et de les utiliser au mieux pour résoudre des problèmes concrets. Il y aurait peut-être d&rsquo;autres avantages à étudier, comme la réutilisation possibles de schémas existants, comme ceux que l&rsquo;on peut trouver dans le <a href="http://lov.okfn.org" target="_blank">LOV</a> (Linked Open Vocabularies).</p>
<p style="text-align: justify;">De plus en plus de projets vont vouloir soit tirer parti de ce qui est publié librement sur le web de données, soit rationnaliser des intégrations d&rsquo;API compliquées, ou encore améliorer leurs chaines de traitement et de diffusion de contenus, ouvrir des données de bases auparavant fermées, aligner des référentiels avec du raisonnement, etc&#8230; tous ces projets peuvent bénéficier d&rsquo;une approche basée sur le web de données. Si vous voulez en savoir plus, n&rsquo;hésitez pas à réagir ici ou à me <a href="http://sparna.fr/contact.html" target="_blank">contacter</a>.</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/10/25/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/">Bénéfices clés des technologies du web de données 2/2 – absence de modèle, raisonnement</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2012/10/25/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bénéfices clés des technologies du web de données 1/2 &#8211; l&#8217;environnement distribué</title>
		<link>https://blog.sparna.fr/2012/10/19/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/</link>
		<comments>https://blog.sparna.fr/2012/10/19/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/#comments</comments>
		<pubDate>Fri, 19 Oct 2012 20:28:11 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[SPARQL]]></category>
		<category><![CDATA[web de données]]></category>
		<category><![CDATA[web sémantique]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=214</guid>
		<description><![CDATA[<p>Fondamentalement, les technologies du web de données (&#171;&#160;linked data&#160;&#187;) apportent 3 bénéfices : (i) elles permettent de manipuler ou de publier des données dans un environnement distribué, (ii) elles ne recquierent pas de modèle de données et (iii) elles permettent de faire de l&#8217;inférence, de trouver des nouveaux liens. Par conséquent, les projets où le&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/10/19/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/">Bénéfices clés des technologies du web de données 1/2 &#8211; l&rsquo;environnement distribué</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Fondamentalement, les technologies du web de données (&laquo;&nbsp;linked data&nbsp;&raquo;) apportent 3 bénéfices : (i) elles permettent de <strong>manipuler ou de publier des données dans un environnement distribué</strong>, (ii) elles ne <strong>recquierent pas de modèle de données</strong> et (iii) elles permettent de <strong>faire de l&rsquo;inférence</strong>, de trouver des nouveaux liens.</p>
<p style="text-align: justify;">Par conséquent, les projets où le modèle de données est stable et qui n&rsquo;ont ni besoin d&rsquo;intégrer des données provenant d&rsquo;autres systèmes, ni besoin de fournir leurs données à d&rsquo;autres systèmes, n&rsquo;ont pas de bénéfice à utiliser cette approche. Elle a tout son sens notamment dans les projets d&rsquo;ouverture des données, d&rsquo;open data (la donnée est distribuée et les modéles hétérogènes) mais il faut y sensibiliser les acteurs. J&rsquo;examine dans ce premier post le premier de ces 3 bénéfices : un réseau de données décentralisées, distribuées.</p>
<p style="text-align: justify;"><span id="more-214"></span></p>
<p style="text-align: justify;"><span style="font-size: medium;"><strong>L&rsquo;environnement distribué, ADN du web</strong></span></p>
<p>Tout comme l&rsquo;hypertexte a révolutionné les contenus et les documents dans un contexte distribué (la façon de les écrire, de les diffuser, d&rsquo;y naviguer), le web de données &#8211; on pourrait parler d&rsquo; &laquo;&nbsp;<strong>hyperdonnées</strong>&nbsp;&raquo; ou d&rsquo; &laquo;&nbsp;hyperdata&nbsp;&raquo; pour faire le paralelle &#8211; permet de prolonger encore cette approche en l&rsquo;appliquant aux données des applications. C&rsquo;est-à-dire <strong>en mettant en relation les données dans un environnement distribué</strong>.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;"><em>Interrogation fédérée des données</em></span></p>
<p style="text-align: justify;">Cet aspect distribué permet une <strong>interrogation fédérée des données</strong>. Plus la peine d&rsquo;avoir toutes les données au même endroit pour les interroger. Dans le monde SGBD+SQL, pour interroger plusieurs sources de données, on doit forcément les avoir dans le même système. En RDF+SPARQL, le mot-clé <a href="http://www.w3.org/TR/sparql11-federated-query/" target="_blank">SERVICE</a> permet d&rsquo;envoyer des critères de recherche à des sources de données différentes, et de combiner les résultats en une seule requête. Un exemple de requête sur le web de données est &laquo;&nbsp;donne-moi la date de naissance des acteurs de Star-Trek&nbsp;&raquo; (une première source de données a l&rsquo;info des acteurs de Star-Trek, une source différente a leur date de naissance).</p>
<p style="text-align: justify;"><span style="text-decoration: underline;"><em>Interconnection des données</em></span></p>
<p style="text-align: justify;">Cette approche distribuée permet également de <strong>combiner des données enfouies dans des systèmes propriétaires pour les réutiliser ensemble</strong>. Vous savez, c&rsquo;est quand la comptable aimerait bien recouper des infos de facturation qui sont dans un CRM du genre SAP avec les feuilles de temps des employés qui sont dans une base Oracle&#8230; au XXème siècle on lui dit gentiment que ce n&rsquo;est pas possible, au XXIème siècle on ajoute un <a href="http://www.w3.org/2001/sw/rdb2rdf/implementation-report/" target="_blank">middleware relationnel vers RDF</a>, et hop, soit en utilisant une requête fédérée avec SERVICE (voir plus haut), soit en intégrant les données ainsi traduites dans un triplestore (voir le prochain post), le recoupement d&rsquo;informations devient possible.</p>
<p style="text-align: justify;">La même problématique se retrouve dans l&rsquo;open data; comment utiliser ensemble des données sur les lycées, celles sur les collèges et les écoles, et d&rsquo;autres sur la population pour créer une (hypothétique) application qui montrerait la carte scolaire ? en ayant normalisé ces données qui parlent de la même chose (&laquo;&nbsp;établissement&nbsp;&raquo;, &laquo;&nbsp;nombre d&rsquo;élèves&nbsp;&raquo;, &laquo;&nbsp;latitude&nbsp;&raquo;,  &laquo;&nbsp;longitude&nbsp;&raquo;, etc&#8230;), et en ayant fait des liens entre elles (&laquo;&nbsp;le collège se trouve dans le quartier X&nbsp;&raquo;, et &laquo;&nbsp;le quartier X a tant d&rsquo;habitants&nbsp;&raquo;). Notons que <strong>les bénéfices de cette mise en commun des données sont autant pour les utilisateurs des données que pour les collectivités elles-mêmes</strong> qui vont avoir accès en un point central à des données auparavant hétérogènes.</p>
<p style="text-align: justify;"><span style="text-decoration: underline;"><em>Enrichissement des données</em></span></p>
<p style="text-align: justify;">L&rsquo;interconnection des données permet de <strong>tirer parti des données qui viennent de l&rsquo;extérieur du système développé</strong>. On peut ainsi enrichir un système interne qui utilise les technologies du web de données par des informations venant de sources de données externes : une photo provenant de <a href="http://fr.dbpedia.org/" target="_blank">DBPedia</a>, une arborescence géographique provenant de <a href="http://www.geonames.org/" target="_blank">Geonames</a> (&laquo;&nbsp;France &gt; Champagne-Ardenne &gt; Marne &gt; Arrondissement d&rsquo;Epernay &gt; Epernay&nbsp;&raquo;), les listes d&rsquo;ouvrages d&rsquo;un auteur provenent de la <a href="http://data.bnf.fr" target="_blank">BNF</a>, etc.</p>
<p><span style="text-decoration: underline;"><em>Qu&rsquo;est-ce qui permet cet aspect distribué ?</em></span></p>
<p style="text-align: justify;">Cette distribution n&rsquo;est possible que parce qu&rsquo;un certain nombre d&rsquo;efforts ont été fait pour obtenir <strong>un accès unifié aux données</strong>. Cet accès unifié aux données passe notamment par :</p>
<ul style="text-align: justify;">
<li>Une <strong>identification de chaque objet</strong> avec une URI, et la possibilité d&rsquo;accéder aux données de cet objet simplement en &laquo;&nbsp;appellant&nbsp;&raquo; cette URI. Pas besoin d&rsquo;une requête compliquée ou d&rsquo;un protocole d&rsquo;accès obscur, <strong>on utilise HTTP, le protocole du web</strong>; si on veut &laquo;&nbsp;référencer&nbsp;&raquo; un objet dans nos données, on indique simplement son URI;</li>
<li>Un <strong>protocole d&rsquo;interrogation standardisé</strong> : SPARQL. Attention, il y a bien non seulement le langage d&rsquo;interrogation SPARQL, lui-même bien mieux normalisé que SQL dont les multiples variantes ne facilitent pas les migrations d&rsquo;un outil vers un autre, mais également le protocole d&rsquo;interrogation, qui permet d&rsquo;interroger n&rsquo;importe quelle source de données de façon standard, sans avoir besoin d&rsquo;un quelconque &laquo;&nbsp;driver&nbsp;&raquo; comme en SQL.</li>
</ul>
<p style="text-align: justify;">Ces efforts de standardisation ont par ailleurs des &laquo;&nbsp;effets de bord&nbsp;&raquo; positifs :</p>
<ul style="text-align: justify;">
<li>une <strong>plus grande indépendance vis-à-vis des outils</strong>. Si le protocole et le langage de requête sont standards, il est possible de commencer à utiliser des outils gratuits (Sesame, Jena) en phase de prototypage et de passer ensuite de façon transparente sur des outils commerciaux sans rien redévelopper;</li>
<li>l&rsquo;interrogation des données se faisant par le protocole HTTP, <strong>il est très facile de déployer un système de cache HTTP</strong> pour améliorer les temps de réponse. Ces outils de cache (par exemple <a href="http://www.squid-cache.org/">Squid</a>) sont largement connus et déployés par les administrateurs systèmes, là où les mécanismes de cache au niveau d&rsquo;une base de données sont plus compliqués à mettre en oeuvre (outils propriétaires et plus bas niveau).</li>
</ul>
<p style="text-align: justify;"><strong>L&rsquo;aspect décentralisé est dans l&rsquo;ADN du web. Il est normal qu&rsquo;il s&rsquo;applique aux données</strong> après s&rsquo;être appliqué aux documents. Il est également normal de parler de préférence de &laquo;&nbsp;web de données&nbsp;&raquo;, et non pas de web &laquo;&nbsp;sémantique&nbsp;&raquo;, adjectif vague, aux promesses floues qu&rsquo;il faut sans cesse expliquer; le terme &laquo;&nbsp;web de données&nbsp;&raquo; est mieux défini et ses promesses plus concrètes.</p>
<p style="text-align: justify;">Dans la <a title="Bénéfices clés des technologies du web de données 2/2 – absence de modèle, raisonnement" href="http://blog.sparna.fr/benefices-cles-des-technologies-du-web-de-donnees-22-absence-de-modele-raisonnement/">deuxième partie</a> j&rsquo;examinerai les deux autres bénéfices clés des technologies du web de données : l&rsquo;<strong>absence de schéma</strong> et les possibilités de<strong> raisonnement</strong>.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=81fac854-6447-40b8-9847-36809ae200ec" alt="" /></div>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/10/19/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/">Bénéfices clés des technologies du web de données 1/2 &#8211; l&rsquo;environnement distribué</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2012/10/19/benefices-cles-des-technologies-du-web-de-donnees-12-lenvironnement-distribue/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RDF : Sesame, Jena, comparaison des fonctionnalités</title>
		<link>https://blog.sparna.fr/2012/05/08/rdf-sesame-jena-comparaison-des-fonctionnalites/</link>
		<comments>https://blog.sparna.fr/2012/05/08/rdf-sesame-jena-comparaison-des-fonctionnalites/#comments</comments>
		<pubDate>Tue, 08 May 2012 22:02:27 +0000</pubDate>
		<dc:creator><![CDATA[Thomas Francart]]></dc:creator>
				<category><![CDATA[OWL]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[SPARQL]]></category>
		<category><![CDATA[Triplestores]]></category>
		<category><![CDATA[sesame jena comparison]]></category>

		<guid isPermaLink="false">http://blog.sparna.fr/?p=14</guid>
		<description><![CDATA[<p>&#160; Dans le monde des développeurs d&#8217;applications basées sur le web sémantique, il y a 2 grandes écoles en ce qui concerne les triplestores : les adeptes de Jena, et ceux de Sesame. Personnellement j&#8217;ai un faible pour Sesame. Sesame propose des fonctionnalités proches de Jena, moins complètes, mais sans doute un peu plus facile&#8230;</p>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/05/08/rdf-sesame-jena-comparaison-des-fonctionnalites/">RDF : Sesame, Jena, comparaison des fonctionnalités</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Dans le monde des développeurs d&rsquo;applications basées sur le web sémantique, il y a 2 grandes écoles en ce qui concerne les triplestores : les adeptes de <a href="http://incubator.apache.org/jena" target="_blank">Jena</a>, et ceux de <a href="http://www.openrdf.org/" target="_blank">Sesame</a>.</p>
<p>Personnellement j&rsquo;ai un faible pour Sesame. Sesame propose des fonctionnalités proches de Jena, moins complètes, mais sans doute un peu plus facile à intégrer ; la philosophie de son API est différente, et, s&rsquo;il s&rsquo;agit de faire simplement de la manipulation de données RDF (sans inférence compliquée, sans gestion d&rsquo;ontologie OWL), le choix entre les deux est essentiellement une question de goût ! Son interface web d&rsquo;administration vous facilitera par contre énormément le travail s&rsquo;il s&rsquo;agit de configurer rapidement un triplestore et de charger des données RDF dedans.</p>
<p>On donne ci-dessous un tableau comparatif des fonctionnalités entre Jena et Sesame, au 1er mai 2012 ; il faut noter que, là où Jena propose d&rsquo;emblée un certain nombre de modules avec beaucoup de fonctionnalités, pour Sesame ces fonctionnalités peuvent être présentes dans l&rsquo; &laquo;&nbsp;écosystème&nbsp;&raquo; autour de Sesame : <a href="http://www.ontotext.com/owlim" target="_blank">OWLIM</a> ou <a href="http://www.openrdf.org/alibaba.jsp" target="_blank">Ali Baba.</a></p>
<p><span id="more-14"></span></p>
<table cellspacing="0" cellpadding="4">
<tbody>
<tr valign="TOP">
<td style="width: 33%;">
<p align="CENTER"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>Fonctionnalité</strong></span></span></p>
</td>
<td style="width: 33%;">
<p align="CENTER"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>Sesame 2.6.5</strong></span></span></p>
</td>
<td width="206">
<p align="CENTER"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>Jena (core 2.7.0-incubating, IRI 0.9.0-incubating, ARQ 2.9.0-incubating, TDB 2.9.0-incubating)</strong></span></span></p>
</td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Existe depuis</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">2004</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">2000</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Licence</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">BSD-style (http://www.opensource.org/licenses/BSD-3-Clause)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Apache (http://www.apache.org/licenses/LICENSE-2.0)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Mis à jour régulièrement</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>Entrées/Sorties</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Entrées/Sorties aux formats RDF/XML, N3, Turtle, N-Triples</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Entrées/Sorties en TriG, TriX</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Sortie en RDF/XML-ABBREV</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>SPARQL</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Query en SPARQL 1.0</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Query en SPARQL 1.1</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">SPARQL Update</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Autres langages de requêtes supportés ?</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">SeRQL</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Création de requêtes SPARQL programmatiquement</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (package org.openrdf.query.parser.sparql.ast)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module ARQ)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Serveur SPARQL</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (de base à travers le serveur Sesame)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module Fuseki)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Utilitaire en ligne de commande pour executer une requête SPARQL</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui, via la commande « console »</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Indexation plein texte des données du graphe RDF par Lucene</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en utilisant Ali-Baba ou l&rsquo;extension « LuceneSail » : <a href="http://dev.nepomuk.semanticdesktop.org/wiki/LuceneSail">http://dev.nepomuk.semanticdesktop.org/wiki/LuceneSail</a></span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui, module LARQ</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>Gestion du RDF</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Gestion du RDF en mémoire</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Stockage RDF dans une base relationnelle</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module SDB)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Stockage RDF dans des fichiers binaires</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (Native RDF repository)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module TDB)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Support des graphes nommés</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Support des transactions (commit, rollback)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Paramétrage de graphes RDF via un fichier de configuration</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module Assembler)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>Inférence</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Inférence RDFS native</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Inférence OWL-Lite native</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en utilisant OWLIM</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Inférence OWL-DL</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en utilisant OWLIM</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en connectant le moteur Pellet</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Inférence à base de règles</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en utilisant OWLIM</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>OWL</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">API de manipulation OWL et RDFS : manipulation des classes, propriétés, domain, ranges, restrictions, etc.</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui, natif</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>Administration</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Interface utilisateur d&rsquo;administration : créer un stockage RDF, ajouter des données, naviguer, etc.</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (sesame-workbench)</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr style="background-color: #d2b48c;">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><em><strong>Divers</strong></em></span></span></td>
<td width="206"></td>
<td width="206"></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Mécanisme de listeners pour monitorer les événements sur le RDF</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Génération de fichiers de constantes Java à partir d&rsquo;une ontologie</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non, mais possible en utilisant Ali-Baba</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module schemagen)</span></span></td>
</tr>
<tr valign="TOP">
<td style="width: 33%;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Utilitaire de vérification de données RDF</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Non</span></span></td>
<td width="206"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Oui (module eyeball)</span></span></td>
</tr>
</tbody>
</table>
<div></div>
<div></div>
<div>Et vous, quelle fonctionnalité de manipulation de RDF utilisez-vous le plus ?</div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="float: right;" src="http://img.zemanta.com/pixy.gif?x-id=d0ef5d77-c00c-44cb-8472-1a583b146175" alt="" /></div>
<p>Cet article <a rel="nofollow" href="https://blog.sparna.fr/2012/05/08/rdf-sesame-jena-comparaison-des-fonctionnalites/">RDF : Sesame, Jena, comparaison des fonctionnalités</a> est apparu en premier sur <a rel="nofollow" href="https://blog.sparna.fr">Sparna Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sparna.fr/2012/05/08/rdf-sesame-jena-comparaison-des-fonctionnalites/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
