Hi Pete,
This is an interesting use case showing the complexity of aligning
ontologies, and the lack of a standard way to represent alignments.
I couldn't access http://lod.taxonconcept.org/ so I'll give you an
examples using the Biological Taxonomy Vocabulary (biol) the Wildlife
Ontology (wo) and GeoSpecies (gs).
The easiest case is term equivalence, as it seems to be between
wo:scientificName
and biol:name
You can use owl:equivalentProperty between them.
It becomes more complex if the terms are not fullly equivalent:
on one side gs:hasScientificName
has domain gs:SpeciesConcept
which is subclass of gs:TaxonConcept
on the other side wo:scientificName
has domain wo:TaxonName which is related to wo:TaxonRank through the
wo:name object property, and wo:Species is subclass of wo:TaxonRank
so it seems that gs:hasScientificName
applies to a narrower domain.
You can thus use skos:narrower to indicate this relation.
It is more precise than skos:closeMatch but still quite vague.
So it would be better to specify the exact relation between the two
properties, by specifying the type of the wo instances should be wo:Species.
In RIF BLD:
Forall ?x ?y ( gs:hasScientificName(?x ?y) :- and( wo:scientificName(?x
?y) rdf:type(?x, wo:Species) ) )
Now the problems:
- The skos approach raise problems given the semantics of the skos terms,
the properties aligned using skos:closeMatch or skos:narrower become
skos Concepts. This might lead to some unwanted effects when using a
reasoner.
- The RIF rule does not completely do its job as it is only an
implication. I don't think it can be written in the other direction (RIF
expert needed here).
- three different vocabs are needed to represent three correspondences.
An alternative solution is to use EDOAL [1] which is made for alignment
representation and allows export to skos, owl or rif through the
Alignment API [2].
Here are the above three correspondences in EDOAL (rdf/n3):
:1 a align:Cell;
align:entity1 wo:scientificName;
align:entity2 biol:name;
align:relation "=".
:2 a align:Cell;
align:entity1 gs:hasScientificName;
align:entity2 wo:scientificName;
align:relation "<".
:3 a align:Cell;
align:entity1 gs:hasScientificName;
align:entity2 [
edoal:and wo:scientificName;
edoal:and [
a eodal:PropertyDomainRestriction;
edoal:class wo:Species.
]
]
Hope this helps !
François
[1] http://alignapi.gforge.inria.fr/edoal.html
[2] http://alignapi.gforge.inria.fr/
is that they are equivalent but only for the part where
Le 09/02/12 21:18, Peter DeVries a écrit :
I was wondering what the best way to align similar ontology terms are
not exactly equivalent either because they have a specific domain or
because there are slight differences in how they are used. For
instance some uses of Scientific Name include form with authority and
others
have a separate term for the scientific name with authority.
Here are the terms that I am most concerned about, but similar issues
apply to genus, family etc.
<!-- http://lod.taxonconcept.org/ontology/txn.owl#scientificName -->
<owl:DatatypeProperty
rdf:about="http://lod.taxonconcept.org/ontology/txn.owl#scientificName">
<rdfs:label>scientificName</rdfs:label>
<vs:term_status>testing</vs:term_status>
<owl:equivalentProperty
rdf:resource="http://lod.taxonconcept.org/ontology/txn.owl#hasScientificName"/>
<skos:closeMatch rdf:resource="http://purl.org/NET/biol/ns#name"/>
<skos:closeMatch
rdf:resource="http://www.uniprot.org/core/scientificName"/>
<skos:closeMatch
rdf:resource="http://rdf.geospecies.org/ont/geospecies#hasScientificName"/>
<skos:closeMatch
rdf:resource="http://rs.tdwg.org/dwc/terms/scientificName"/>
<skos:closeMatch
rdf:resource="http://purl.org/ontology/wo/scientificName"/>
<rdfs:isDefinedBy
rdf:resource="http://lod.taxonconcept.org/ontology/txn.owl"/>
<rdfs:subPropertyOf
rdf:resource="http://www.w3.org/2004/02/skos/core#prefLabel"/>
</owl:DatatypeProperty>
<!-- http://lod.taxonconcept.org/ontology/txn.owl#commonName -->
<owl:DatatypeProperty
rdf:about="http://lod.taxonconcept.org/ontology/txn.owl#commonName">
<rdfs:label>commonName</rdfs:label>
<vs:term_status>testing</vs:term_status>
<rdfs:isDefinedBy
rdf:resource="http://lod.taxonconcept.org/ontology/txn.owl"/>
<skos:closeMatch rdf:resource="http://purl.org/NET/biol/ns#commonName"/>
<skos:closeMatch
rdf:resource="http://rs.tdwg.org/dwc/terms/vernacularName"/>
<skos:closeMatch
rdf:resource="http://rdf.geospecies.org/ont/geospecies#hasVernacularName"/>
<skos:closeMatch rdf:resource="http://purl.org/ontology/wo/commonName"/>
<rdfs:subPropertyOf
rdf:resource="http://www.w3.org/2004/02/skos/core#altLabel"/>
</owl:DatatypeProperty>
<!-- http://lod.taxonconcept.org/ontology/txn.owl#authority -->
<owl:DatatypeProperty
rdf:about="http://lod.taxonconcept.org/ontology/txn.owl#authority">
<rdfs:label>authority</rdfs:label>
<rdfs:comment>The author and year of the species description
publication i.e (Baker, 1899)</rdfs:comment>
<vs:term_status>testing</vs:term_status>
<rdfs:isDefinedBy
rdf:resource="http://lod.taxonconcept.org/ontology/txn.owl"/>
<skos:closeMatch
rdf:resource="http://lod.taxonconcept.org/ontology/txn.owl#scientificNameAuthorship"/>
<skos:closeMatch rdf:resource="http://purl.org/NET/biol/ns#authority"/>
<skos:closeMatch
rdf:resource="http://rs.tdwg.org/dwc/terms/scientificNameAuthorship"/>
<skos:closeMatch
rdf:resource="http://rdf.geospecies.org/ont/geospecies#hasScientificNameAuthorship"/>
</owl:DatatypeProperty>
Respectfully,
- Pete
------------------------------------------------------------------------------------
Pete DeVries
Department of Entomology
University of Wisconsin - Madison
445 Russell Laboratories
1630 Linden Drive
Madison, WI 53706
Email: [email protected] <mailto:[email protected]>
TaxonConcept <http://www.taxonconcept.org/> & GeoSpecies
<http://about.geospecies.org/> Knowledge Bases
A Semantic Web, Linked Open Data <http://linkeddata.org/> Project
--------------------------------------------------------------------------------------