Skip to content

Ontology conversion (OBO and TD to SKOS)

marieALaporte edited this page Oct 23, 2013 · 5 revisions

Adding to the Crop Ontology the semantic sound relationships between concepts in the Simple Knowledge Organization Format (SKOS)

Convert OBO to SKOS

from Simon Jupp 2007 : OBO to SKOS converter (protégé plugin)

Define matches between OBO classes and properties and SKOS ones.

  • OBO -> SKOS
  • OBO ontology -> skos:conceptScheme
  • OBO Format Version -> no match. but we can use http://www.w3.org/2003/06/sw-vocab-status/ns#term_status ???
  • OBO Auto Generated By -> no match
  • OBO Creator -> no match but use of dc:creator
  • OBO Title -> no match but use of dc:title
  • OBO Date -> no match but use of dc:date
  • OBO Id -> skos:Concept
  • OBO Name -> skos:prefLabel
  • OBO Def -> skos:definition
  • OBO Synonym -> skos:altLabel
  • OBO Comment -> skos:editorialNote
  • OBO is-a -> sub property of skos:broader
  • OBO part-of -> sub property of skos:broader. Warning ! during inference. I would recommend the skos:related property instead.
  • OBO integral-part-of -> sub property of skos:broader. Warning ! same as part-of
  • OBO proper-part-of -> sub property of skos:broader. Warning ! same as part-of
  • OBO located-in -> sub property of skos:broader. Warning ! for me, should be sub property of skos:related
  • OBO adjacent-to -> sub property of skos:related
  • OBO transformation-of -> sub property of skos:related
  • OBO derives-from -> sub property of skos:related
  • OBO preceded-by -> sub property of skos:related
  • OBO has-participant -> sub property of skos:broader. Warning ! not sure I understand properly this OBO property use
  • OBO has-agent-> sub property of skos:broader. Warning ! not sure I understand properly this OBO property use
  • OBO instance-of -> sub property of skos:broader. Warning ! for me, should be rdf:type skos:Concept

Comment : Initiative BioGateway : ONTO-PERL a collection of PERL modules for dealing with OBO-formatted ontologies and including format conversion.

Convert Trait Dictionary to SKOS

example of the Sorghum TD. All the "?" have to be discussed to find the more convenient conversion.

  • Trait dictionary Descriptors -> SKOS
  • IBFieldbook -> no match
  • Name of submitting scientist -> dc:creator
  • Institution -> foaf:Organization
  • Language of submission (only in ISO 2 letter codes) -> xml:lang
  • Date of submission -> dc:date
  • Crop -> skos:inScheme with Crop=conceptScheme
  • Name of Trait -> skos:prefLabel or skos-xl:prefLabel. (Only one by concept by language !)
  • Abbreviated name -> sub property of skos-xl:labelRelation
  • Synonyms (separate by commas) -> skos:altLabel or skos-xl:altLabel
  • Trait ID for modification, Blank for New -> skos:Concept
  • Description of Trait -> skos:definition
  • How is this trait routinely used? -> sub property of skos:related. A trait is linked to a given use or function
  • Trait Class -> skos:broader
  • Method ID for modification, Blank for new -> sub property of skos:related with method ID=skos:Concept
  • Name of Method -> skos:prefLabel or skos-xl:prefLabel. Only one per concept by language !
  • Describe how measured (method) -> skos:definiton
  • Growth Stage -> ?
  • Bibliographic Reference -> ?
  • Comments -> skos:editorialNote
  • Scale ID for modification, Blank for new -> see method comments
  • Type of Measure (Continuous, Discrete or Categorical) -> ?
  • For Continuous: units of measurement -> ?
  • For Continuous: reporting units (if different from measurement) -> ?
  • For Continuous: minimum -> ?
  • For Continuous: maximum -> ?
  • For Discrete: Name of scale or units of measurement -> ?
  • For Categorical: Name of rating scale -> ?
  • For Categorical: Class 1 - value = meaning -> ?
  • For Categorical: Class 2 - value = meaning -> ?
  • For Categorical: Class 3 - value = meaning -> ?
  • For Categorical: Class 4 - value = meaning -> ?
  • For Categorical: Class 5 - value = meaning -> ?

Luca’s RDF file

All the TD fields have not been translated into RDF (name, description, no CO_id). The file is a mix between an RDF file and a SKOS file.

Syntaxic consistency check :

The file fails the W3C RDF validator test. The file consists only in triples. The serialization is undefined. The use of the JENA library (java library) could help to solve these issues.

General comments on content :

rdfs:subClassOf instead of skos:broader id RDF file. If not, skos:definition instead of rdf:comment and skos:prefLabel instead of rdfs:label

###Extract of SKOS file for Sorghum (N3 serialization) @prefix dc: http://purl.org/dc/elements/1.1/ . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema# . @prefix co: http://www.cropontology.org/rdf/ . @prefix skosxl: http://www.w3.org/2008/05/skos-xl# . @prefix foaf: http://xmlns.com/foaf/0.1/ . @prefix dct: http://purl.org/dc/terms/ . @prefix owl: http://www.w3.org/2002/07/owl# . @prefix xsd: http://www.w3.org/2001/XMLSchema# . @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# . @prefix vs: http://www.w3.org/2003/06/sw-vocab-status/ns# . @prefix skos: http://www.w3.org/2004/02/skos/core# .

_:b1 a foaf:Person ; foaf:name "Jayashree B" .

http://www.cropontology.org/rdf/CO_324:Plant%20morphology a skos:Concept ; rdfs:label "Plant morphology"@en ; skos:inScheme co:sorghum ; skosxl:prefLabel [ a skosxl:Label ; skosxl:literalForm "Plant morphology"@en ] .

http://www.cropontology.org/rdf/CO_324:0000002 a skos:Concept ; rdfs:label "Flag leaf weight"@en ; dc:creator _:b1 ; skos:definition "Weight of the flag leaf (the one just below the panicle)." ; skos:inScheme co:sorghum ; skosxl:prefLabel [ a skosxl:Label ; co:acronym [ a skosxl:Label ; skosxl:literalForm "FLGWT" ] ; skosxl:literalForm "Flag leaf weight"@en ] .

http://www.cropontology.org/rdf/CO_324:0000003 a skos:Concept ; rdfs:label "Rest of leaves weight"@en ; dc:creator _:b1 ; skos:definition "Total leaf weight minus flag leaf weight per pot." ; skos:inScheme co:sorghum ; skosxl:prefLabel [ a skosxl:Label ; co:acronym [ a skosxl:Label ; skosxl:literalForm "LFWT1" ] ; skosxl:literalForm "Rest of leaves weight"@en ] .

[] a foaf:Organization ; foaf:member _:b1 ; foaf:name "ICRISAT" .

co:acronym rdfs:subPropertyOf skosxl:labelRelation .

co:sorghum a skos:ConceptScheme ; rdfs:label "sorghum" ; skosxl:prefLabel [ a skosxl:Label ; skosxl:literalForm "sorghum"@en ] .