Roger,
One slight extension/modification I would like to see is that I would really like to see the polymorphism more like Java interface implementation than Java class extension (i.e. "multiple inheritance" may be a good thing if suitably controlled, e.g. by namespaces). My point here is that I want it to be easy for our data providers to make use of all relevant polymorphisms (extensions) when serving their data. Darwin Core is my model here. If we develop a range of extension vocabularies to augment Darwin Core in describing a taxon occurrence, providers should be able to serve data including any subset of those vocabularies.
This may be so obvious as not to need saying, but I wanted to be sure it was captured.
By the way, I thoroughly agree with your other points and believe that we should focus on the small shared vocabulary you describe. If we define these anchor points, subgroups can address everything that we need to flesh out these classes for use in applications (including defining properties that relate their objects to objects of other classes).
Thanks,
Donald
--------------------------------------------------------------- Donald Hobern (dhobern@gbif.org) Programme Officer for Data Access and Database Interoperability Global Biodiversity Information Facility Secretariat Universitetsparken 15, DK-2100 Copenhagen, Denmark Tel: +45-35321483 Mobile: +45-28751483 Fax: +45-35321480 ---------------------------------------------------------------
_____
From: Tdwg-tag-bounces@lists.tdwg.org [mailto:Tdwg-tag-bounces@lists.tdwg.org] On Behalf Of Roger Hyam Sent: 22 February 2006 16:50 To: Tdwg-tag@lists.tdwg.org Subject: [Tdwg-tag] Object Model / Ontology Management - how we kick it off.
Hi All,
It is generally agreed that we need an representation independent object model or ontology of some kind. I would like to put together a list of the things that need to be agreed or investigated in order to do this.
Firstly the things I believe we can all agree on (stop me if I am wrong).
1. It should be representation independent (i.e. we should be able to move it between 'languages' UML, OWL, BNF etc). 2. It should be dynamic (i.e. capable of evolving through time). 3. It should be polymorphic. This is a result of it being dynamic. There will, at a minimum, be multiple version of any one part of the model when new version are introduced. 4. It should NOT attempt to be omniscient i.e. it will not cover everything in our domain, only the parts that need to be communicated. 5. It will be managed in a distributed fashion. Different teams will take responsibility for different parts of it.
My first Question is:
Does the centralization of the ontology need to go beyond a small shared vocabulary of terms or base classes?
I envisage this ontology containing things like Collection, Specimen, TaxonConcept, TaxonName but not defining the detailed structure of these objects. It would contain a maximum of a few 10's of objects and properties. TDWG subgroups would be responsible for building ontologies that extend these base objects but that generally didn't refer to each other - only to the core. If this is true then I think the definition of the top level object falls within the remit of the TAG ( in consultation with others).
If this is not a valid way forward what are the alternatives?
Are their questions we should ask before this one?
Once again I'd be grateful for your thoughts.
Roger