gestion des versions pour un thesaurus
La propriété versionInfo est une annotation property et une ontology property, elle est présente dans la specification OWL 1 et n'est plus présente dans la spécification OWL 2.
dans OWL 2 une ontologie (et toute ressource sémantique) a deux IRI: la base et une versionnée: La propriété versionIRI est une ontology property et n'est pas une annotation property. La spécification indique que la dernière version de l'ontologie doit être accessible par ces deux IRI https://www.w3.org/TR/owl2-syntax/#Versioning_of_OWL_2_Ontologies.
La question est: faut il créé deux individus différents dans le graphe pour représenter IRI de base et IRI versionné?
deux individus IRI de base + IRI versionné: qu'est ce qu'on met comme individu derrière ces 2 IRI?
Deux individus distincts copie l'un de l'autre.
TSCF a fait le choix d'avoir un graphe nommé par version. Donc dans le SPARQL Endpoint on n'a bien deux individus avec des IRI différentes, qui sont deux copies du même objet. Ces 2 IRI sont interrogeables en SPARQL. Dans les graphes nommés, les instances des skos:Concept ont une IRI avec IRI de base et ils sont dupliqués dans chaque graphe nommé.
Le fichier .owl brut disponible sur le git en lien avec agroportal indique bien une ontologie avec une IRI de base différente de la version IRI. Sinon Agroportal ne peut pas détecté la version.
cas un individu IRI versionné: Qu'est ce qu'on met comme individu derrière cet IRI et que devient IRI de base.
le déréférencement à un role important: toute demande de l'IRI de base doit renvoyé l'individu représentant IRI versionné.
il n'y a dans le SPARQL Endpoint qu'un seul individu celui de l'IRI versionné. Mais alors les mentions de l'IRI de base dans le fichier ne sont pas interrogeable en SPARQL. Possibilité remplacé toutes les mentions de l'IRI de base par l'IRI versionné. Ce qui revient à écrire un triplet IRIversionné isVersionOf IRIversionné.