Hi Tim,

I think I skipped a few steps in my previous explanations... - the explicit 
reference to dcterms:location is now coming from a custom addition to 
tdwg_dwc_classes.xsd. If this wasn't there, dcterms:location wouldn't be 
defined at all in the schema, thus making the samples shown in section 2.7.1 of 
https://dwc.tdwg.org/xml/ invalid. The goal was to make "location" mandatory in 
the Darwin Core description (among a few other classes).  I added the following 
to the xs:sequence definition of the Darwin Record Set.


            <xs:element ref="dcterms:location" minOccurs="1"/>
            <xs:element ref="dwc:Occurrence" minOccurs="1"/>
            <xs:element ref="dwc:Identification" minOccurs="1"/>
            <xs:element ref="dwc:Taxon" minOccurs="1"/>


All of these (including a commented out dcterms:location) are defined in 
tdwg_dwc_class_terms.xsd, and the dcterms:location comment says "see 
dublin_core.xsd for definition". As we have now both observed, dublin_core.xsd 
used to exist, but has now been removed... the commented out code would seem to 
define dcterms:location in the same structure as the other dwc classes from 
tdwg_dwc_class_terms.xsd, and seems to be exactly what I would need - except, 
if the Darwin Core XML guide is all valid, I would be making 'custom classes 
and terms' for my Darwin Core plugin, which breaks interoperability.


Kim

________________________________
From: Tim Robertson <[email protected]>
Sent: 12 December 2018 16:05:56
To: Kim Mortimer; [email protected]; John Wieczorek; Peter Desmet
Subject: Re: [tdwg-content] Darwin Core and dcterms:location


Hi Kim,

(moving our private discussion onto this list)



Thanks for the links.



As far as I can see the “custom” dublin_core.xsd existed in all DwC releases 
from 2009 up until 2013-10-23 where it was removed.

In that removal, the references to the location were also commented out (I 
presume meaning the modified XSD was no longer needed) though.

For you to still find references to it suggests you might be using an older 
version of the Darwin Core XSD – is that possible?



John / Peter: Do you recall why it was removed?



To save searching, the modification to the DC xsd appeared to contain only the 
following:



    <!-- SAMPLING LOCATION domain -->

    <xs:element name="Location" substitutionGroup="dwc:anyClass">

        <xs:complexType>

            <xs:choice maxOccurs="unbounded">

                <xs:element ref="dwc:anyIdentifier"/>

                <xs:element ref="dwc:anyLocationTerm"/>

                <xs:element ref="dwc:anyRecordLevelTerm"/>

            </xs:choice>

        </xs:complexType>

    </xs:element>



The commented out reference in the DwC xsd:



<!-- LOCATION domain --><!-- reuses the dcterms:location term, so see 
dublin_core.xsd for definition --><!--<xs:element name="Location" 
substitutionGroup="dwc:anyClass"> <xs:complexType> <xs:choice 
maxOccurs="unbounded"> <xs:element ref="dwc:anyIdentifier"/> <xs:element 
ref="dwc:anyLocationTerm"/> <xs:element ref="dwc:anyRecordLevelTerm"/> 
</xs:choice> </xs:complexType> </xs:element>-->



(see https://dwc.tdwg.org/xml/tdwg_dwc_class_terms.xsd)









From: tdwg-content <[email protected]> on behalf of Kim 
Mortimer <[email protected]>
Date: Wednesday, 12 December 2018 at 20.34
To: "[email protected]" <[email protected]>
Subject: Re: [tdwg-content] Darwin Core and dcterms:location



To the TDWG mailing list and whomever it may concern,



Darwin Core uses a Dublin Core element, dcterms:location, in its definition of 
classes and elements. However, no current XSD files for Dublin Core (that I can 
find) define location as an element. For reference, the current Dublin Core XSD 
files that I am familiar with are available at 
http://dublincore.org/schemas/xmls/qdc/ Given that dcterms:location is 
therefore an undefined element, the Darwin Core XML is invalid.



This is important to me, and my employer MERIDIAN, because we are implementing 
Darwin Core in a GeoNetwork metadata schema plugin for our repository. To allow 
other documents to be validated against our schema within GeoNetwork, the 
entire plugin XML (which for us includes the Darwin Core XML) must be valid. I 
previously sent an email about this in September but did not receive any useful 
advice at the time. Development on our metadata repository has progressed 
without this element since then, as we have been tracking down other errors in 
GeoNetwork, but this is the current 'blocking' problem for us.



The Darwin Core XSD files reference a dublin_core.xsd in their comments, which 
is said to contain dcterms:location. My best guess at what this refers to is 
https://github.com/tdwg/dwc/blob/2011-10-26/xsd/dublin_core.xsd - which is from 
a previous version of Darwin Core, and appears to be a custom version of 
http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd - so it unclear 
whether this is correct or not.



Given that TDWG is responsible for Darwin Core, I am hopeful that someone will 
have a tip or solution. My alternative is to define dcterms:location myself as 
a custom insertion into Dublin Core, but based on the comments in Darwin Core 
files I believe some suitable XSD must exist.



Thank you very much for your time,



Kim Mortimer



[mage removed by sender. MERIDIAN on blue circle containing many numbers,]


Kim Mortimer


Data Manager


MERIDIAN - Marine Environmental Research Infrastructure for Data Integration 
and Application Network


Institute for Big Data Analytics, Faculty of Computer Sciences, Dalhousie 
University


p: + 1 902 494 1812 m: +1 902 880 1863


a: 6050 University Ave, Halifax, NS, B3H 4R2, Canada


w: https://meridian.cs.dal.ca e: [email protected]<mailto:[email protected]>




_______________________________________________
tdwg-content mailing list
[email protected]
http://lists.tdwg.org/mailman/listinfo/tdwg-content

Reply via email to