The various elements like #Observation, #Image, #Identification within the TaxonConcept species concepts are similar to puns.

This is designed to follow OWL2

Note that the Honey Bee http://lod.taxonconcept.org/ses/z9oqP#Species

Has 

    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#Image"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#Occurrence"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#Individual"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#Identification"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#Taxonomy"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#NCBI_Taxonomy"/>
    <dcterms:hasPart rdf:resource="http://lod.taxonconcept.org/ses/z9oqP#OriginalDescription"/>

In part this was designed so that the species concept could be an owl class while the occurrence of a Honey Bee is an instance of the class txn:Occurrence.
It is tied to the species concept because an Honey Bee occurrence record is also an instance of http://lod.taxonconcept.org/ses/z9oqP#Occurrence

See 

HTML http://ocs.taxonconcept.org/ocs/0da685c9-9cdc-4dff-baf3-38d1bdbc6552.html
RDF    http://ocs.taxonconcept.org/ocs/0da685c9-9cdc-4dff-baf3-38d1bdbc6552.rdf

Similarly now and identification of a Honey Bee  is both an instance of txn:Identification and an instance of http://lod.taxonconcept.org/ses/z9oqP#Identification

This SPARQL Query describe all the identification events for the Honey Bee.

describe ?s where { ?s a <http://lod.taxonconcept.org/ses/z9oqP#Identification> }

< http://lsd.taxonconcept.org/isparql/view/?query=describe%20%3Fs%20where%20{%20%3Fs%20a%20%3Chttp%3A%2F%2Flod.taxonconcept.org%2Fses%2Fz9oqP%23Identification%3E%20}%0A&endpoint=/sparql&resultview=browser&maxrows=50&view=1 >

or via bit.ly  http://bit.ly/iDRIaY


- Pete

On Mon, May 9, 2011 at 1:09 AM, Paul Murray <pmurray@anbg.gov.au> wrote:

On 09/05/2011, at 2:07 PM, Kevin Richards wrote:

> Paul
>
> I had the same thought (ie the x is of type dwc:Taxon, y is of type tc:Taxon, we know dwc:Taxon and tc:Taxon are equivalent, so we can reasonably compare x and y).
> And this is built into standard semantic web reasoners - which is a bonus.
> But this was debated (taking into account Bob Morris' issue) with respect to DwC and it was decided the benefits weren't significantly better than having a "dwc:isInCategory" sort of property that could then be "equivalent to" another class property and therefore giving you a similar advantage (admittedly not as good, but similar).
> Do you think this is reasonable or are we just losing too much semantic web benefits by not specifying the domain constraint?

A thing to watch out for is that in OWL DL, you cannot apply ordinary data and object properties to vocabulary objects (classes, predicates) - you can only apply annotation properties. If you apply an ordinary data property to a class, OWL DL treats this as what it calls "punning": it decides that there is a class named X and also a named individual named X, and that these have nothing to do with one another. The individual has properties, the class has members, and the annotation properties, well: whatever. Reasoners do not reason over annotation properties: indeed - that's the entire point. Attempting to put properties on properties and having classes being instances of classes results in things that are mathematically undecidable ("this statement cannot be proven to be true").

(another reason is that is allows you to put dc:comments and labels on classes, and even if you declare those classes to be equivalent nevertheless the comment only applies to the particular thing you put it on)

This all means that dwc:isInCategory, if you want to apply it to dwc:taxon or other classes, will never have any meaning that semweb "engines" can get at. The underlying thing is that dwc:isInCategory is actually a meta-syntactic construct: rather than using owl to define a vocabulary, you are effectively attempting to extend OWL itself.

But ... maybe that's ok. Maybe what is attempting to be done here only ever needs to be understood by humans.

Now ... if what you are trying to do is to define "Fish" as an owl class as well as as a Taxon object - that is do-able, even to the point of being able to get inheritance working, using reflexive properties.  At least ... I think it is. I should write a test case.
If you have received this transmission in error please notify us immediately by return e-mail and delete all copies. If this e-mail or any attachments have been sent to you in error, that error does not constitute waiver of any confidentiality, privilege or copyright in respect of information in the e-mail or attachments.

Please consider the environment before printing this email.
_______________________________________________
tdwg-content mailing list
tdwg-content@lists.tdwg.org
http://lists.tdwg.org/mailman/listinfo/tdwg-content



--
------------------------------------------------------------------------------------
Pete DeVries
Department of Entomology
University of Wisconsin - Madison
445 Russell Laboratories
1630 Linden Drive
Madison, WI 53706
Email: pdevries@wisc.edu
TaxonConcept  &  GeoSpecies Knowledge Bases
A Semantic Web, Linked Open Data  Project
--------------------------------------------------------------------------------------