Gregor,
That sounds like a good solution to all of the problems. I would
propose that the basisOfRecord IS the the same thing as your proposed
dwc:subtype, so we should keep basisOfRecord.
Net solution:
1) keep dcterms:type
2) use DCType vocabulary to control dcterms:type (so, StillImage,
PhysicalObject, Event, etc.)
3) keep basisOfRecord
4) use our DwC-specific subtypes (PreservedSpecimen, FossilSpecimen,
HumanObservation, etc.) as the controlled vocabulary for basisOfRecord
without a formal type vocabulary (very close to how it is now, just
some of the terms would go to dcterms:type).
5) add a recordClass term
6) use the DwCType vocabulary to control the recordClass term instead
of the dcterms:type term.
This solutions fixes the Dublin Core - Darwin Core controlled
vocabulary problem, retains all existing terms, isolates the
controlled vocabulary that is specific to our domain, making it very
easy to expand without changes to the standard.
Any objections?
John
On Fri, Oct 23, 2009 at 12:33 PM, Gregor Hagedorn
<g.m.hagedorn@gmail.com> wrote:
How about we retain basisOfRecord, but have it refine dcterms:type,
drop dcterms:type and add a "recordClass" term in its place that is
governed exactly as dcterms:type is currently being used in the
recently ratified version of the Core?
recordClass for Taxon/Occurrence/Event sounds good.
I am less sure about keeping the "perspective-dependent"
basisOfRecord-term in a place where dcterms:type. The dcterms:type
vocabulary is, in principle, extensible, and meant to be extended.
Except, of course, some specific xml-implementation of dublin core
prevent this... To avoid problems with this one might desire to have
only the strict resource type vocabulary in dcterms:type. Then this
could by PhysicalObject/Event and a dwc:subtype added to express
PreservedSpecimen/MachineObservation etc. Essentially, MRTG intends to
use such a mrtg:subtype as well to differentiate different StillImage
or Text subtypes:
http://www.keytonature.eu/wiki/MRTG_Schema_v0.8#Subtype
This would then mean, DarwinCore might support:
dwc:recordClass
dcterms:type
dwc:subtype
Gregor
.