[tdwg-tag] Darwin Core generic XML with attributes

Steve Baskauf steve.baskauf at vanderbilt.edu
Thu May 20 03:52:23 CEST 2010


This recent discussion reminds me of a question that I have been 
wondering about for several months and hadn't gotten around to bringing 
up: can you have a Darwin Core XML representation where an element has a 
literal value and an attribute? If the XML is RDF, then I think the 
answer is pretty much "no" as I just found out with the W3C Validator.  
However, in generic XML I don't think there is any rule that says that 
one can't have any attribute that one wants.  The only guidance I know 
of on the subject is:
http://rs.tdwg.org/dwc/terms/guides/xml/index.htm#implement
It states that the value of a Darwin Core property should be the content 
of the element rather than stating the value as an attribute.  However, 
I have the situation where I want to store or transfer two somewhat 
equivalent representations of the value of a property: a string literal 
form and a URI form.  In the example we've been talking about, I would 
like my generic (non-RDF) XML to do something like this:

<?xml version="1.0" encoding="UTF-8"?>
<dwr:SimpleDarwinRecordSet 
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
                 xmlns:dwc="http://rs.tdwg.org/dwc/terms/"
                 xmlns:dwr="http://rs.tdwg.org/dwc/xsd/simpledarwincore/"
                 >
<dwr:SimpleDarwinRecord>
     <dwc:occurrenceID 
rdf:resource="http://herbarium.org/hb123456">http://herbarium.org/hb123456</dwc:occurrenceID>
     <dwc:recordedBy 
rdf:resource="http://people.vanderbilt.edu/~steve.baskauf/foaf.rdf#me">Steve 
Baskauf</dwc:recordedBy>
     <dwc:basisOfRecord 
rdf:resource="http://rs.tdwg.org/dwc/dwctype/PreservedSpecimen">PreservedSpecimen</dwc:basisOfRecord>
     ... more elements, mostly with string literal values...
</dwr:SimpleDarwinRecord>
</dwr:SimpleDarwinRecordSet>

This would meet the basic guidelines of the Darwin Core XML Guide in 
that the literal values would be the contents of the elements.  What I 
don't know is if the inclusion of the rdf:resource attributes would 
invalidate the XML if it were validated against someone's schema that 
was silent about attributes or if the schema would have to explicitly 
say that having an rdf:resource attribute was a valid option.  I think I 
don't know enough about XML schemas ...

The reason why I would like to maintain/transfer both types of values 
(literal and URI) is so that I could use the XML data to generate both 
HTML and RDF if I wanted.  The HTML would tell humans that the 
occurrence was a PreservedSpecimen, but the RDF would tell a linked data 
client that the occurrence was a 
http://rs.tdwg.org/dwc/dwctype/PreservedSpecimen .  I realize that for 
my own internal use, the XML can have any format I want, but if I were 
exporting XML for general public use, would it be bad to use the 
approach above?

Steve

As an aside, I wanted to see exactly what the definition was for 
rdf:resource  However, the usual namespace for rdf: 
(http://www.w3.org/1999/02/22-rdf-syntax-ns#) doesn't seem to include 
"resource" in the defined properties.  Very odd!  Maybe I'm just missing 
something...

-- 
Steven J. Baskauf, Ph.D., Senior Lecturer
Vanderbilt University Dept. of Biological Sciences

postal mail address:
VU Station B 351634
Nashville, TN  37235-1634,  U.S.A.

delivery address:
2125 Stevenson Center
1161 21st Ave., S.
Nashville, TN 37235

office: 2128 Stevenson Center
phone: (615) 343-4582,  fax: (615) 343-6707
http://bioimages.vanderbilt.edu




More information about the tdwg-tag mailing list