De la représentation d’un SPO

Voulant écrire un nouvel article au sujet de l’ontologie et des valeurs, j’ai souhaité mieux transposer mes propos en les illustrant. De prime à bord je partais sur un graph, tel que :

SPO d’un livre ayant pour Titre « Titre du livre »

Où le Sujet S représente un livre, ayant un Prédicat P « Titre » et ayant pour Objet O une valeur texte « Titre du livre ».

Mais ceci contient un souci de représentation, bien que l’on comprenne aisément la relation d’un Sujet et de l’Objet via un Prédicat, cela nous empêche de comprendre le Prédicat lui-même. Car oui le Prédicat peut être développé lui aussi.

Vue du Prédicat

Avant ça, poussons le bouchon plus loin en transformant l’Objet O en un nouveau S :

SPO d’un livre dont la valeur du Titre contient des métadonnées

L’Objet valeur devient un Sujet à son tour qui a des Prédicats eux-mêmes pointant vers des valeurs finies (primitives) ou des Sujets. Mais on a cette intuition que le Prédicat n’est qu’un lien, un mot sur une liaison, alors qu’ils sont bien plus que ça.

Illustration de la complexité des liaisons des Prédicats

Le Prédicat est à la fois l’attribut liant le Sujet à l’Objet mais également un Sujet à part entière ayant ses propres liaisons vers des Objets au travers de Prédicats, parfois les mêmes, et ainsi de suite. Et encore ici nous n’avons pas illustré l’usage multiple, ça deviendrait illisible. Imaginez plusieurs « Livre » passant par le Prédicat « Prédicat#Titre » et allant vers un Objet distinct chacun.

Illustration de l’usage multiple de la référence d’un Prédicat pour plusieurs Sujets et Objets

Vous en conviendrez c’est un beau bordel. Et encore j’ai mis des couleurs pour votre lecture. Car sinon on pourrait dire qu’un livre a plusieurs Titre, ce qui est tout à fait admissible par le modèle SPO.

Proposition de représentation

Cette représentation n’est donc pas idéale, mais quid alors ? Je vous propose une transformation en objet et une vue en tables.

Comme vous pouvez le voir j’ai gardé les codes couleur des exemples précédents, à savoir le noir pour les Sujets et le bleu pour les Objet à valeur de type primitive. Considérez « Type », « Titre » et « Type#Livre » tel que « Livre », à savoir un Sujet, je n’ai pas illustré la table dessous chacun pour éviter la surcharge graphique.

On a donc le Sujet « Livre » ayant un Prédicat « Type » d’Objet « Type#Livre », qui donc est lui-même un Sujet, et un Prédicat « Titre » d’Objet de valeur texte « Titre du livre ». Ça c’est dans le cas simple illustré en début d’article. J’ai juste ajouté le Prédicat « Type » pour illustrer 2 types d’Objet.

Si maintenant nous avons des métadonnées sur la valeur « Titre du livre », cet Objet devient un Sujet, c’est-à-dire que l’on va encapsuler dans un nouveau Sujet, la valeur initiale et tout autre attribut venant des métadonnées de cette valeur. Dans notre exemple, j’ajoute l’ordre et la date de création. Et évidemment comme nous créons un nouveau sujet, nous le typons, et c’est là que vous voyez la réutilisation du Prédicat « Type » de manière distincte.

Autre point d’intérêt, le Sujet « Type#Contenu », qui est, à la fois valeur d’un Objet pour le Prédicat « Type », et à la fois Prédicat, pour la valeur « Titre du livre ». Ce qui est tout à fait correcte et illustre parfaitement ce dont nous parlions plus tôt. Ici nous pouvons « voir », l’implication des Sujets, leur connexions et les valeurs primitives associées.

Mais quant est-il dans le cas où nous avons plusieurs valeurs pour un même Prédicat ? Une solution, illustrée ci-avant, serait de partir du Prédicat et d’aller vers nos 2 Sujets en Objet. Et on peut débattre de la représentation, à savoir tel que représenté ci-avant, 1 devient N. Ou comme ci-dessous, ou nous créons 3 associations.

Je pense que les 2 devraient se combiner, la première permet une économie de représentation tout en restant compréhensible- et la seconde permet de bien illustrer les valeurs et leur Prédicat. Même si on pourrait simplifier peut-être tel que :

Le tout étant de rester lisible à la première lecture et sans ambiguïté. Je pense du coup que l’objectif est atteint et que l’on va pouvoir passer aux articles suivants avec un système de représentation plus accessible.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.