-
Instance de classe
Bonjour,
Je suis entrain de faire une comparaison entre les raisonneurs du web sémantique et à ce stade j'ai besoin d'introduire des instances avec le même nom mais j'arrive pas car protégé détecte l’existence d'une instance avec ce nom et refuse la deuxième comment je peux le faire ?, autre chose SVP j'ai besoin d'affecter des clés a chaque individu (instance) quel est le meilleur moyen de le faire?
je vous remercie d'avance pour votre aide :).
-
Est-ce que tu ne confond pas l'URI et le nom ? ce que tu donnes à la création d'une instances dans Protégé est son URI, qui est obligatoirement unique. Le nom est une annotation de type "label" (rdfs;label), et tu peux tout à fait avoir plusieurs instances avec le même label (mais des URIs différentes).
Pour une clé pour chaque individu, je pense que tu as besoin d'une objectProperty "inverse functional", qui garantit que chaque valeur de la propriété ne peut être attachée qu'à une seule instance.
-
Oui c'est ça je confond URI et nom :) mais le problème lors de la création de l'instance le nom que j'attribut il sera utilisé dans l'URI concaténé avec un chemin qui toujours le même,du coup je me trouve avec les même URI si je veux ajouter deux individus avec le même nom comment je fais pour leurs donner des labels et qui seront afficher pour pouvoir les différencier.
Concernant la solution pour l'attribution de clé c'est ce que j'avais en tête et vous m'avez confirmer cette idée je vais utilisé un ObjectPropertiy "inverse functional" mais j'ai juste une confusion pourquoi inverse functional et non pas functional tout court .
et merci pour votre aide :)
-
Je vois, il faut que tu changes une option dans Protégé : dans la boite de dialogue où tu rentres le nom (qui génère l'IRI) de l'instance, clique sur le bouton "New entity options...", dans dans la fenêtre qui s'ouvre choisit l'option "Ends with : User supplied name" (à la place de "Auto-generated ID".
Ainsi, ce que tu saisis lors de la création de l'instance ne sera que l'IRI, aucun rdfs:label ne sera créé (tu devras le créer manuellement ensuite). Ca te permettra d'avoir des instances d'IRI différentes avec le même nom.
"Functional" ca veut dire "comme une fonction", donc "à chaque instance correspond une seule valeur". C'est un peu comme dire "cardinalité maximum = 1". Ce que tu veux c'est dire l'inverse : "à chaque valeur correspond une seule instance"; et ça, c'est "inverse functional".
-
Merci pour ces réponses vous m'avez expliquez ce que je voulais savoir encore merci :)