AgriOntology‎ > ‎IrsteaOntologies‎ > ‎

AgronomicTaxon & AgronomicTaxonCore


Objectif

Cette ontologie a été créée pour représenter les différents taxons utilisés dans les classifications taxonomiques.
Ces taxons peuvent être  associés aux organismes vivants pour permettre de les classer automatiquement.
Elle aurait ainsi aussi pour but de découvrir automatiquement (en utilisant un raisonneur) quels sont les organismes vivants qui sont classés comme plante.
Une question qui apparaît dans les forums: quelle est le nom de cette plante?
Pour simplifier les usages, Agronomic Taxon Core a été créé qui stocke uniquement la hiérarchie des taxons agronomiques (préfixe: atc).

Related Works


Plusieurs ontologies ont été étudiées en particulier:

utilisé dans notre module repository préfixe nom date de mise à jour nb de classes nb d'object properties (relations) nb de data properties (attributs) Notes url de la documentation commentaire
OUI import direct W3C SKOS Simple Knowledge Organization System 2009 5 17 1 h http://www.w3.org/2009/08/skos-reference/skos.html DL expressivity: SHIF

LOV botany Biological Taxonomy Vocabulary 0.2 2009 5 2 110 a variant of biol for botany.


LOV biol Biological Taxonomy Vocabulary 0.2 (Core) 2008 3 3 12



LOV txn TaxonConcept Ontology 2012 109 152 91 includes taxon. .Voir la page de description TaxonConcept Ontology


LOV geos GeoSpecies Ontology 2009 107 250 128



LOV taxon TaxonMap Ontology Initial 2013 62 19 14




wlo Wildlife Ontology 2010 31 29 16




tdwg TDWG ontology core (Darwin core) 2007 14

non



tmo TaxMeOn 2011 32 32 11 non


ODP
Biological Entity



http://ontologydesignpatterns.org/wiki/Submissions:Biological_Entities

Non ODP
AOS AGROVOC Concept Server fundation ontology model 8 199 37 0 http://ontologydesignpatterns.org/wiki/Submissions:AOS_AGROVOC_Concept_Server_fundation_ontology_model http://www.fao.org/aims/aos/aos.owl trop d'éléments DL expressivity: ALUHIF+(D)
OUI import direct avec modif ODP
Linnean Taxonomy 2008 8 4 0 http://ontologydesignpatterns.org/wiki/Submissions:LinnaeanTaxonomy http://www.ontologydesignpatterns.org/cp/owl/linnaeantaxonomy.owl créé lors du projet NeOn. DL expressivity: SHI nous avons supprimé des contraintes pour rendre le patron plus generique à n'importe quelle taxonomie.
OUI import direct ODP
Classification 2008 2 2 0 http://ontologydesignpatterns.org/wiki/Submissions:Classification http://www.ontologydesignpatterns.org/cp/owl/classification.owl créé lors du projet NeOn DL expressivity: ALI
non
agroportal txrf
TAXREF-LD
2017



TAXREF-LD





AgronomicTaxonCore

AgronomicTaxonCore

Classification et taxonomie

Une taxonomie agronomique est un schema skos représenté par la classe ConceptScheme.
Un schema skos est composé de plusieurs concepts skos.
Un concept skos est représenté par la classe Concept.
L'appartenance d'un concept à un schéma est indiquée par la relation skos inScheme.

Taxon, rang

Un taxon est un concept skos et est représenté par la classe atc:Taxon.
La classe Taxon est spécialisée pour représenter les différents rangs de taxons dans les classifications cf wikipedia http://fr.wikipedia.org/wiki/Rang_taxinomique).
L'ensemble des rangs de la classification de Cronquist a été créé dans cette ontologie:
  • règne (kingdom)  représenté par la classe atc:KingdomRank. Cette classe peut aussi être nommée Kingdom, KingdomConcept, KingdomTaxon ou KingdomRank dans d'autres ontologies.
  • division pour le règne végétal  (phylum) représentée par la classe atc:PhylumRank. Dans le règne animal ce taxon est appelé embranchement.
  • classe (class) représentée par la classe atc:ClassRank. Cette classe peut aussi être nommée Class, ClassConcept, ClassTaxon ou ClassRank dans d'autres ontologies.
  • ordre (order) représenté par la classe atc:OrderRank. Cette classe peut aussi être nommée Order, OrderConcept, OrderTaxon ou OrderRank dans d'autres ontologies.
  • famille (family) représentée par la classe atc:FamilyRank. Cette classe peut aussi être nommée Family, FamilyConcept, FamilyTaxon ou FamilyRank dans d'autres ontologies.
  • genre (genus) représenté par la classe atc:GenusRank. Cette classe peut aussi être nommée Genus, GenusConcept, GenusTaxon ou GenusRank dans d'autres ontologies.
  • espèce (species) représentée par la classe atc:SpecyRank. Cette classe peut aussi être nommée Specy, Species, SpeciesConcept, SpeciesTaxon ou SpeciesRank dans d'autres ontologies.
  • variété (variety) représentée par la classe atc:VarietyRank. Cette classe peut aussi être nommée Variety, VarietyConcept, VarietyTaxon ou VarietyRank dans d'autres ontologies.
Chaque nom de taxon est représenté par un individu (une instance d'une classe).
Par exemple le taxon représentant le règne animal, nommé regne_plantae, est une instance de la classe  atc:KingdomRank.
La hiérarchie entre taxons est indiquée par les relations atc:hasHigherRank et atc:hasLowerRank entre individus. (regne_plantae hasLowerRank genre_tricticum)

Note par rapport à ODP d'origine linneanTaxonomy, les restrictions universelles (only)  sur les taxons ont été supprimées, car chaque taxonomie peut avoir une profondeur différente avec apparition de nouveaux rangs comme sousClasse, sousEspèce etc...

Hiérarchie des taxons et raisonnement associé

(date de la modification octobre 2016)

L'ontologie de la FAO AOS spécialise ses relations en indiquant quel sont les rangs des taxons qui doivent être liés. Par exemple la relation hasKingdom lie un embranchement à un règne. Il s'agit d'une spécialisation de hasHigherRank. La relation includesPhyla lie un règne à un embranchement. Il s'agit d'une spécialisation de hasLowerRank.

Nous avons donc ajouté plusieurs relations spécialisant hasHigherRank et hasLowerRank.

  • hasKingdom -includesPhyla- Link PhylumRank instances to KingdomRank instances
  • hasPhylum -includesClasses- Link ClassRank instances to PhylumRank instances
  • hasClass  -includesOrders- Link OrderRank instances to ClassRank instances (existe dans AOS)
  • hasFamily -includesGenus- link GenusRank instances to FamilyRank instances (existe dans AOS)
  • hasGenus -includeSpecies- link SpecyRank instances to GenusRankInstances (existe dans AOS)
  • hasOrder -includesFamilies- link FamilyRank instances to OrderRank instances (existe dans AOS)
  • hasSpecy -includesVarieties link SpecyRank instances to VarietyRank instances (existe en partie dans AOS)

Contrairement à AOS, nous avons ajouté des contraintes de domaine et de range sur ces relations. Nous avons aussi indiqué que ces relations etaient irréflexives.

Nous avons aussi défini les regles SWRL qui permettent de déduire ces relations à partir de hasHigherRank

KingdomRank(?r) ^ PhylumRank(?e) ^ hasHigherRank(?e, ?r) -> hasKingdom (?e,?r).

Le résultat de ces déduction sont disponibles dans le fichier agronomicTaxon-Test-2016-10-14-v2.rdf

Label des Taxons

Un taxon au moins un nom scientifique en latin et un ou plusieurs noms usuels par langue. Pour se faire nous avons aussi ajoutées des data properties
  • hasScientificName
  • hasVernacularName

Note  les règles (SWRL) ne gèrent pas à notre connaissance les annotations properties, c'est pour cette raison que nous n'avons pas spécialiser les rdf:label.

Pour tenir compte que certaines sources proposent des synonymes de noms scientifiques nous avons spécifié de nouvelles data properties:

  • hasScientificName 
    • prefScientificName: indique les noms scientifiqyes synonymes.
    • altScientificName: indique le nom scientifique actuellement en usage
  • hasVernacularName
    • prefVernacularName: indique les noms vernaculaires synonymes.
    • altVernacularName: indique le nom vernaculaire actuellement en usage

AgronomicTaxon

Label et raisonnement associé

Le nom d'un organisme vivant est donné par le nom de son espèce.
Deux règles SWRL ont été créées pour copier le nom scientifique et le nom commun de l'espèce dans les noms de l'organisme vivant.
Ces noms sont stockés dans des data properties et non dans les annotations properties.

SpecyRank(?s), LivingOrganism(?o), isClassifiedBy(?o, ?s), hasVernacularName(?s, ?label) -> hasVernacularName(?o, ?label)
SpecyRank(?s), LivingOrganism(?o), isClassifiedBy(?o, ?s), hasScientificName(?s, ?label) -> hasScientificName(?o, ?label)

Classification des organismes vivants

Un organisme vivant est représenté par la classe LivingOrganism.
Les organismes vivants sont classés en fonction de ces taxons en utilisant la relation isClassifiedBy.
Cette relation est spécialisée en fonction des rangs possibles: règne, espèce, variété...
Chaque type d'organisme vivant sera définie par une classe.
Par exemple il sera possible de représenter les plantes par une classe Plant. Cette classe sera définie par l'axiome = isClassifiedBy value regne_plantae.

isClassifiedBy et le raisonnement associé


Le but de cette ontologie est de retrouver l'ensemble des taxons d'une classification donnée associé à un organisme vivant.
Un raisonneur doit pouvoir à partir d'une association d'un taxon compléter l'ensemble de la description taxonomique par les taxons parents.
Par exemple considérons un individu de type inconnu plant_de_ble. cet individu est associé uniquement au taxon espece_tricticum_durum par la relation isClassifiedBy.
Le but est de découvrir que cet individu est une plante.  C'est à dire que cet individu doit être  classé automatiquement comme instance de la classe Plant car associé au taxon regne_plantae par la relation isClassifiedBy.

Pour se faire nous avons déclaré une property chain sur la relation isClassifiedBy
isClassifiedBy o hasHigherRank --> isClassifiedBy.
C'est à dire que lorsque l'on connait le taxon de rang inférieur associé à un organisme vivant, on connait forcément les taxons de ses rangs supérieurs. Attention, l'inverse n'est pas vrai.
Le moteur d'inférence (Pellet) identifie automatiquement que le plant de blé est une plante même si l' est classé à l'aide du taxon "tricticum durum".

Évolution

  1. Septembre 2014, le design pattern de neon linnean taxonomy ne doit pas etre importer directement car nous supprimons certaines des ces contraintes. Nous devons donc créer nos propres classes et mettre en commentaire qu'elle ressemble à celles de l'ODP linnean taxonomy
  2. Septembre 2014 nous devons conserver les noms dans les labels rdf.
  3. Pour faire fonctionner l'exemple j'ai rempli la hiérarchie pour le taxon tricticum représentant le blé, mais il faudrait compléter l'ontologie automatiquement.
  4. Ajouter d'autres classifications agronomiques.
    1. les taxons  issus d'autre classification (APGIII) par exemple.
    2. Il faut ajouter une classification zoologique.
  5. Comment remplir automatiquement cette ontologie en utilisant par exemple:
    1. agrovoc le thésaurus de la FAO
    2. le catalogue des semences pour remplir les variétés
  6. aligner cette ontologie avec les autres ontologies sur la classification agronomique et importer les données.

Remarque

il n'est pas facile d'importer des ontologies que l'on veut modifiées en supprimant des parties. J'ai du tout recréer et il faudra ajouter des alignement entre les classes équivalentes.

Règles de nommage

Le nom des individus est écrit en minuscule.
Le nom des individus est écrit en français.
Le nom des individus ne contient pas d'accent.
Le nom des individus utilise _ comme séparateur.

Le nom des classes commence toujours par une majuscule.
Le séparateur de mot est le changement de casse, passage d'une minuscule à une majuscule.
Le nom des classes est écrit en anglais.

Les labels (annotation property rdfs:label et data property de type string) sont écrits en minuscule avec des espaces comme séparateur de mot et avec des accents.
Les labels doivent être associés à une langue.
Les labels "scientificName" sont principalement de langue latine: code lat.
ċ
agronomicTaxon-2013-06-18.owl
(14k)
Catherine Roussey,
18 Jun 2013, 08:32
ċ
agronomicTaxon-2013-07-17.rdf
(28k)
Catherine Roussey,
17 Jul 2013, 09:32
ċ
agronomicTaxon-2014-09-08.rdf
(26k)
Catherine Roussey,
8 Sep 2014, 08:21
ċ
agronomicTaxon-Test-2016-10-14-v1.rdf
(64k)
Catherine Roussey,
17 Oct 2016, 08:17
ċ
agronomicTaxon-Test-2016-10-14-v2.rdf
(75k)
Catherine Roussey,
17 Oct 2016, 08:17
Comments