[tdwg-content] multiplicity whine about DwC

Bob Morris morris.bob at gmail.com
Sat Sep 10 14:25:41 CEST 2011

Warning: technical DwC whine

I am attempting to use DwC in RDF to model something that is
functionally like the predicate lsidvoc:identifiesTo in the LSID
vocabularies.  If I understand correctly, in DwC I must start with an
\instance/ of dwc:ResourceRelationship, lets call it x:identifiesTo
and use  its dwc:resourceID to provide the source Identification and
its  dwc:relatedResourceID to provide the instance's object Taxon. The
problem is, you can't use the same instance x:identifiesTo for two
different (Identification, Taxon) pairs  because you won't be able to
tell which Identification goes with which Taxon.  A little more
precisely, if you don't have another instance of dwc:Resource
Relationship, you will have:

x:identifiesTo rdf:type dwc:ResourceRelationship
x:identifiesTo dwc:resourceID Identification1
x:identifiesTo dwc:relatedResoruce Taxon1
x:identifiesTo dwc:resourceID identification2
x:identifiesTo dwc:relatedResourceID Taxon2

(This is a generic multiplicity problem about RDF vocabularies that
mean to support flat implementation. In some context recently I made
that observation on this list. If I were as careful as Steve B I'd go
back to the record, find out where and cite it  :-)  . But I have to
rush off and go collect a few weeds  from my lawn and get off to a
weekend course on botanical printing on fabric sponsored in part by
the Arnold Arboretum !)

Probably the only solution is to introduce a real predicate outside
of  DwC that actually looks like lsidvoc:identifiesTo so the graph
looks like
x:identifiesTo rdf:type rdfs:Property
Identification1 x:identifiesTo Taxon1
Identification2 x:identifiesTo Taxon2

This is essentially the approach of
http://code.google.com/p/darwin-sw/. Even this has some implementation
 issues  in an environment where  you are facing some RDF that has
vocabulary from an ontology named by a URI that you can't resolve,
which is what we are exploring in the FilteredPush project about the
management of annotations of data.

I'd love to be shown why I am wrong about the non-reusability of a
dwc:ResourceRelation, or whether there is a different way to solve
problems like this in DwC

Bob Morris

Robert A. Morris

Emeritus Professor  of Computer Science
100 Morrissey Blvd
Boston, MA 02125-3390
IT Staff
Filtered Push Project
Department of Organismal and Evolutionary Biology
Harvard University

email: morris.bob at gmail.com
web: http://efg.cs.umb.edu/
web: http://etaxonomy.org/mw/FilteredPush
phone (+1) 857 222 7992 (mobile)

More information about the tdwg-content mailing list