Hi Kevin,
I can't help but feel we are getting into a much more complicated area of biodiversity ( or any observation oriented field for that matter ) and that there must be other ontologies or models that we could follow or reuse.
If you are referring specifically to adding depth to the observations of Individuals, I think one might look first at OBOE (OBOE: Extensible Observation Ontology) from the SEEK group at NCEAS:
http://ecoinformatics.org/oboe/oboe.1.0/oboe.owl
In summary, this describes an Observation of an Entity, with the Observation comprising a Measurement of the Value for a Characteristic of the Entity:
@prefix oboe: http://ecoinformatics.org/oboe/oboe.1.0/oboe-core.owl# .
[] a oboe:Observation ; oboe:ofEntity [ a oboe:Entity ; ] ; oboe:hasMeasurement [ a oboe:Measurement ; oboe:ofCharacteristic [ a oboe:Characteristic ; ] ; oboe:hasValue [ a oboe:Entity ; ] ; ] .
If we assert that a dwc:Occurrence is an instance of oboe:Entity, with dwc:basisOfRecord of "HumanObservation", with a dc:creator and dc:created (i.e., the space-time intersection of an Individual and a human observer), we can marry these two ontologies quite nicely. Please see Example 1, below, for a description of the fruit color of an individual plant.
What's nice about the OBOE model is that it contains all three possible parts of an observation: the entity, the characteristic and the value. This allows direct mapping to the Prometheus Description Model (structure + property + state = entity + characteristic + value; Pullan et al. 2005, Taxon 54:751-765), and indirect mapping to the popular EQ model (entity + quality, where quality = characteristic + value; Mabee et al. 2007, doi:10.1016/j.tree.2007.03.013). However, it doesn't map easily to the DELTA or SDD data models (character + character-state, where character = entity + characteristic and character-state = value).
Because of the well-developed OBO ontologies, we can directly employ terms from, say, the Plant Ontology (po), for an oboe:Entity, and terms from PATO, the quality ontology, for a oboe:Measurement, combining characteristic and value into a quality. We need to assert that a pato:quality is equivalent to a oboe:Measurement and possibly that a po:PO_0000001 (top level `plant structure') is an oboe:Entity. We can also employ the OBO relational ontology (ro) to indicate that a fruit is ro:part_of the particular space-time Occurrence of an Individual (this might require a bit more discussion!).
So, it seems that using only well-established vocabularies, we can make semantic statements about the characteristics of individuals originally defined primarily using DwC terms. Please see example 2, below for a fairly slim, usable model of a description of the fruit color of an individual plant. The image of the model is at:
http://phylodiversity.net/cwebb/img/tdwg-obs.jpg
Again, any comments on this model will be much appreciated. Are you aware of other attempts to join DwC Occurrence models with OBOE models?
Best,
Cam
====================== Example 1 =======================================
@prefix oboe: http://ecoinformatics.org/oboe/oboe.1.0/oboe-core.owl# . @prefix dwc: http://rs.tdwg.org/dwc/terms/ . @prefix dcterms: http://purl.org/dc/terms/ . @prefix sernec: http://bioimages.vanderbilt.edu/rdf/terms# . @prefix geo: http://www.w3.org/2003/01/geo/wgs84_pos# . @prefix : <#> .
http://phylodiversity.net/xmalesia/indiv/9 a sernec:Individual ; sernec:derivativeOccurrence _:blank1 .
_:blank1 # The Occurrence of the Individual... a dwc:Occurrence ; # ... at a position in space-time... dcterms:created "2008-01-01" ; dcterms:spatial [ a dcterms:Location ; geo:lon "109.95371" ; geo:lat "-1.25530" ; dwc:coordinateUncertaintyInMeters "100" ; ] ; # is a recordable OBOE Entity a oboe:Entity ; # as recorded by a human dcterms:creator "Cam Webb" ; dwc:basisOfRecord "HumanObservation" .
# The details of the observation: [] a oboe:Observation ; oboe:ofEntity [ # The observed entity is actually *part of* the occurrence # of the Individual at a particular Space and Time a :Fruit ; :partOf _:blank1 ; ] ; oboe:hasMeasurement [ oboe:ofCharacteristic :Color ; oboe:hasValue :Green ; ] .
:Fruit a oboe:Entity . :Color a oboe:Characteristic . :Green a oboe:Entity .
========================================================================
====================== Example 2 =======================================
@prefix oboe: http://ecoinformatics.org/oboe/oboe.1.0/oboe-core.owl# . @prefix dwc: http://rs.tdwg.org/dwc/terms/ . @prefix dcterms: http://purl.org/dc/terms/ . @prefix sernec: http://bioimages.vanderbilt.edu/rdf/terms# . @prefix geo: http://www.w3.org/2003/01/geo/wgs84_pos# . @prefix ro: http://www.obofoundry.org/ro/ro.owl# . @prefix pato: http://purl.org/obo/owl/PATO# . @prefix po: http://purl.org/obo/owl/PO# . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema# .
http://phylodiversity.net/xmalesia/indiv/9 sernec:derivativeOccurrence _:blank1 .
_:blank1 a dwc:Occurrence ; dcterms:created "2008-01-01" ; dcterms:spatial [ geo:lon "109.95371" ; geo:lat "-1.25530" ; dwc:coordinateUncertaintyInMeters "100" ; ] ; dcterms:creator "Cam Webb" ; dwc:basisOfRecord "HumanObservation" .
# The details of the observation: [] a oboe:Observation ; oboe:ofEntity [ ro:part_of _:blank1 ; a po:PO_0009001 ; # Fruit ] ; oboe:hasMeasurement pato:PATO_0000320 . # Green color
po:PO_0009001 rdfs:label "fruit" . pato:PATO_0000320 rdfs:label "green" .
========================================================================