Bring XML schemas and guide up to date.

This commit is contained in:
tucotuco 2021-08-06 20:31:51 -03:00
parent 686fb33dd8
commit 6085a0dece
7 changed files with 425 additions and 272 deletions

View File

@ -31,22 +31,18 @@ Creator
: Darwin Core Task Group
Bibliographic citation
: Darwin Core Maintenance Group. 2021. Darwin Core XML guide. Biodiversity Information Standards (TDWG). <http://rs.tdwg.org/dwc/terms/guides/xml/2021-07-15>
: Darwin Core Task Group. 2021. Darwin Core XML guide. Biodiversity Information Standards (TDWG). <http://rs.tdwg.org/dwc/terms/guides/xml/2021-07-15>
## 1 Introduction
This document provides guidelines for implementing application schemas based on [Darwin Core terms](../../terms/) using [XML](http://www.w3.org/XML/). The underlying metadata model is described (in a syntax neutral way), followed by some specific guidelines for XML implementations. Some guidance on the use of non-Darwin Core terms is also provided.
This document does not provide guidelines for encoding Darwin Core in RDF/XML. Nor does it take a position on the relative merits of encoding metadata in "plain" XML rather than RDF/XML. This document provides guidelines in those cases where RDF/XML is not considered appropriate. For information about implementing Darwin Core as RDF, see the Darwin Core RDF Guide, <http://rs.tdwg.org/dwc/terms/guides/rdf/>.
This document does not provide guidelines for encoding Darwin Core in RDF/XML. Nor does it take a position on the relative merits of encoding metadata in "plain" XML rather than RDF/XML. This document provides guidelines in those cases where RDF/XML is not considered appropriate.
### 1.1 Status of the content of this document
All sections of this document are normative, except for sections that are explicitly marked as non-normative.
#### 1.1.1 RFC 2119 key words
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119).
### 1.2 Audience
This document is targeted toward those who wish to use or construct application schemas using Darwin Core terms in XML. It includes explanations of existing schemas such as [Simple Darwin Core](../simple/) and how to build new schemas to meet specific models of information.
@ -55,11 +51,11 @@ This document is targeted toward those who wish to use or construct application
### 2.1 XML schema
Implementors SHOULD base their XML applications on [XML Schemas](http://www.w3.org/XML/Schema) rather than _XML DTDs_. Approaches based on _XML Schemas_ are more flexible and are more easily re-used within other XML applications.
Implementors should base their XML applications on [XML Schemas](http://www.w3.org/XML/Schema) rather than _XML DTDs_. Approaches based on _XML Schemas_ are more flexible and are more easily re-used within other XML applications.
### 2.2 XML namespaces
Implementors SHOULD use [XML Namespaces](http://www.w3.org/TR/1999/REC-xml-names-19990114/) to uniquely identify elements. Darwin Core namespaces are defined in the [Darwin Core Namespace Policy](../../namespace/), while Dublin Core namespaces are defined in the [DCMI Namespace Recommendation](http://dublincore.org/documents/dcmi-namespace/).
Implementors should use [XML Namespaces](http://www.w3.org/TR/1999/REC-xml-names-19990114/) to uniquely identify elements. Darwin Core namespaces are defined in the [Darwin Core Namespace Policy](../../namespace/), while Dublin Core namespaces are defined in the [DCMI Namespace Recommendation](http://dublincore.org/documents/dcmi-namespace/).
### 2.3 Abstract model
@ -70,11 +66,11 @@ The Darwin Core follows the [Dublin Core Metadata Initiative Abstract Model](htt
- A `Darwin Core record` is made up of zero or more `classes` and one or more `properties` with their associated `values`.
- Each `value` is a literal string.
- The `values` of `properties` within a `Darwin Core record` describe that record.
- A `Darwin Core record` MUST include all required `properties`, if any, and their associated `values`.
- A `Darwin Core record` must include all required `properties`, if any, and their associated `values`.
### 2.4 Properties and values
Darwin Core follows the guidelines for expressing [Dublin Core metadata using XML](http://dublincore.org/documents/dc-xml/) except in that Darwin Core implementors MUST encode `properties` as XML elements and `values` as the content of those elements instead of having each property contain a value representation and its associated value. The name of the XML element SHOULD be an XML qualified name (QName), which associates the value given in the `Term name` attribute in the [Darwin Core Terms](../../terms/) recommendation with the appropriate namespace name. For example, use:
Darwin Core follows the guidelines for expressing [Dublin Core metadata using XML](http://dublincore.org/documents/dc-xml/) except in that Darwin Core implementors should encode `properties` as XML elements and `values` as the content of those elements instead of having each property contain a value representation and its associated value. The name of the XML element should be an XML qualified name (QName), which associates the value given in the `Term name` attribute in the [Darwin Core Terms](../../terms/) recommendation with the appropriate namespace name. For example, use:
```xml
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
@ -92,13 +88,13 @@ rather than:
### 2.5 Null values
Elements for which the value is null SHOULD be omitted from the document or OPTIONALLY be explicitly coded using the attribute `xsi:nil="true"`.
Elements for which the value is null should be omitted from the document or explicitly coded using the attribute `xsi:nil="true"`.
```xml
<dwc:locality xsi:nil="true"/>
```
Implementers MUST NOT use an empty string - an element with no content:
Do not use an empty string - an element with no content:
```xml
<dwc:locality></dwc:locality>
@ -106,235 +102,230 @@ Implementers MUST NOT use an empty string - an element with no content:
### 2.6 Simple Darwin Core
[Simple Darwin Core](tdwg_dwc_simple.xsd) most closely models the "flat" nature of many data sets. It is a ready-made schema for sharing information with no structure beyond properties of a _record_ (equivalent to fields in a table, or columns in a spreadsheet). It is meant to accommodate all properties except those that require further structure to be meaningful (auxilliary terms in the classes [ResourceRelationship](http://rs.tdwg.org/dwc/terms/ResourceRelationship) and [MeasurementOrFact](http://rs.tdwg.org/dwc/terms/MeasurementOrFact). The schema has no required terms and terms SHOULD NOT be repeated within a given _record_. Refer to [Simple Darwin Core](../simple/) for the rationale behind this schema.
[Simple Darwin Core](tdwg_dwc_simple.xsd) most closely models the "flat" nature of many data sets. It is a ready-made schema for sharing information with no structure beyond properties of a _record_ (equivalent to fields in a table, or columns in a spreadsheet). It is meant to accommodate all properties except those that require further structure to be meaningful (auxilliary terms in the classes [ResourceRelationship](http://rs.tdwg.org/dwc/terms/ResourceRelationship), [MeasurementOrFact](http://rs.tdwg.org/dwc/terms/MeasurementOrFact), and [ChronometricAge](http://rs.tdwg.org/chrono/terms/ChronometricAge). The schema has no required terms and no term is repeated within a given _record_. Refer to [Simple Darwin Core](../simple/) for the rationale behind this schema.
The term [`dcterms:type`](http://rs.tdwg.org/dwc/terms/dcterms:type) (which is controlled by the [Dublin Core Type Vocabulary](http://dublincore.org/documents/dcmi-type-vocabulary/)), gives the basic category of object (`PhysicalObject`, `StillImage`, `MovingImage`, `Sound`, `Text`) the record is about. The term [`basisOfRecord`](http://rs.tdwg.org/dwc/terms/basisOfRecord), which has a controlled vocabulary distinct from that of `dcterms:type`, shows the name of the Darwin Core class (e.g., [`LivingSpecimen`](http://rs.tdwg.org/dwc/terms/LivingSpecimen), [`PreservedSpecimen`](http://rs.tdwg.org/dwc/terms/PreservedSpecimen), [`FossilSpecimen`](http://rs.tdwg.org/dwc/terms/FossilSpecimen), [`HumanObservation`](http://rs.tdwg.org/dwc/terms/HumanObservation), [`MachineObservation`](http://rs.tdwg.org/dwc/terms/MachineObservation), [`Taxon`](http://rs.tdwg.org/dwc/terms/Taxon)) the record is about.
The term [`dcterms:type`](http://rs.tdwg.org/dwc/terms/dcterms:type) (which is controlled by the [Dublin Core Type Vocabulary](http://dublincore.org/documents/dcmi-type-vocabulary/)), gives the basic category of object (`PhysicalObject`, `StillImage`, `MovingImage`, `Sound`, `Text`) the record is about. The term [`basisOfRecord`](http://rs.tdwg.org/dwc/terms/basisOfRecord), which has a controlled vocabulary distinct from that of `dcterms:type`, shows the name of the Darwin Core class (e.g., [`LivingSpecimen`](http://rs.tdwg.org/dwc/terms/LivingSpecimen), [`PreservedSpecimen`](http://rs.tdwg.org/dwc/terms/PreservedSpecimen), [`FossilSpecimen`](http://rs.tdwg.org/dwc/terms/FossilSpecimen), [`MaterialCitation`](http://rs.tdwg.org/dwc/terms/MaterialCitation), [`HumanObservation`](http://rs.tdwg.org/dwc/terms/HumanObservation), [`MachineObservation`](http://rs.tdwg.org/dwc/terms/MachineObservation), [`Taxon`](http://rs.tdwg.org/dwc/terms/Taxon)) the record is about.
#### 2.6.1 Simple Darwin Core example (non-normative)
Following is a brief example of an XML document for a single specimen complying with the [Simple Darwin Core Schema](tdwg_dwc_simple.xsd)]. The [Simple Darwin Core XML example document](example_simple.xml) (if this link shows a blank page in your browser, use the View Source option to see the XML document) shows detail for a single record having a more complete set of elements.
Following is a brief example of an XML document for a single specimen complying with the [Simple Darwin Core Schema](tdwg_dwc_simple.xsd)].
```xml
<?xml version="1.0"?>
<dwr:SimpleDarwinRecordSet
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://rs.tdwg.org/dwc/xsd/simpledarwincore/ http://rs.tdwg.org/dwc/xsd/tdwg_dwc_simple.xsd"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/"
xmlns:dwr="http://rs.tdwg.org/dwc/xsd/simpledarwincore/">
<dwr:SimpleDarwinRecord>
<dcterms:type>PhysicalObject</dcterms:type>
<dc:type>PhysicalObject</dc:type>
<dcterms:modified>2009-02-12T12:43:31</dcterms:modified>
<dcterms:rightsHolder>Museum of Vertebrate Zoology</dcterms:rightsHolder>
<dcterms:rights>Creative Commons License</dcterms:rights>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Mammals</dwc:collectionCode>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14523</dwc:occurrenceID>
<dc:language>en</dc:language>
<dcterms:rightsHolder>Regents of the University of California</dcterms:rightsHolder>
<dcterms:license>http://creativecommons.org/publicdomain/zero/1.0/legalcode</dcterms:license>
<dwc:basisOfRecord>PreservedSpecimen</dwc:basisOfRecord>
<dwc:country>Argentina</dwc:country>
<dwc:countryCode>AR</dwc:countryCode>
<dwc:stateProvince>Neuquén</dwc:stateProvince>
<dwc:locality>25 km al NNE de Bariloche por Ruta 40 (=237)</dwc:locality>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Mammal specimens</dwc:collectionCode>
<dwc:catalogNumber>MVZ:Mamm:14523</dwc:catalogNumber>
<dec:sex>male</dwc:sex>
<dwc:occurrenceID>http://arctos.database.museum/guid/MVZ:Mamm:14523?seid=770093</dwc:occurrenceID>
<dwc:country>United States</dwc:country>
<dwc:countryCode>US</dwc:countryCode>
<dwc:stateProvince>California</dwc:stateProvince>
<dwc:county>Kern County</dwc:county>
<dwc:locality>8 mi NE Bakersfield</dwc:locality>
<dwc:decimalLatitude>35.45038</dwc:decimalLatitude>
<dwc:decimalLongitude>-118.9092</dwc:decimalLongitude>
<dwc:geodeticDatum>epdg:4267</dwc:geodeticDatum>
<dwc:coordinateUncertaintyInMeters>13696</dwc:coordinateUncertaintyInMeters>
<dwc:eventDate>1911-05-14</dwc:eventDate>
<dwc:scientificName><Perognathus inornatus inornatus/dwc:scientificName>
</dwr:SimpleDarwinRecord>
</dwr:SimpleDarwinRecordSet>
```
### 2.7 Classes and containment
Many Darwin Core terms (`properties`) are defined as being associated with another term (a `class`). For example, [`scientificName`](http://rs.tdwg.org/dwc/terms/scientificName) and [`Taxon`](http://rs.tdwg.org/dwc/terms/Taxon) are both Darwin Core terms, but `scientificName` is a property associated with the `Taxon` class. When constructing schemas that take advantage of classes in structures, implementors are encouraged to maintain the property/class relationships defined by the terms whenever possible (refer to the `Class` attribute of the term as given in the [Quick Reference Guide](../../terms/) or the attribute `dwcattributes:organizedInClass` in the term declaration in the [`dcterms.rdf`](../rdf/dcterms.rdf) file. To promote reuse, Darwin Core provides a set of xml schemas to use as the basis of additional schemas:
Many Darwin Core terms (`properties`) are defined as being associated with another term (a `class`). For example, [`scientificName`](http://rs.tdwg.org/dwc/terms/scientificName) and [`Taxon`](http://rs.tdwg.org/dwc/terms/Taxon) are both Darwin Core terms, but `scientificName` is a property organized within the `Taxon` class. When constructing schemas that take advantage of classes in structures, implementors are encouraged to maintain the property/class organization for the terms whenever possible (refer to the grouping of the term within a class in the [Quick Reference Guide](../../terms/). To promote reuse, Darwin Core provides a set of xml schemas to use as the basis of additional schemas:
- [Terms XML Schema](tdwg_dwcterms.xsd) - property term definitions as typed global elements and named groups for all terms for a given class to be referenced. The schema makes use of substitution groups `anyClass`, `anyProperty`, `anyIdentifier` and `anyXYZTerm` for each class, e.g. `anyTaxonTerm`. This is the schema upon which the [Simple Darwin Core XML Schema](tdwg_dwc_simple.xsd) is based.
- [Class Terms XML Schema](tdwg_dwc_class_terms.xsd) - class term definitions as typed global elements with subelements referencing all corresponding property terms via their substitution group.
It is RECOMMENDED to use classes in a normalized way to avoid deep nesting. A [Darwin Core Tools and Applications page](https://github.com/tdwg/dwc-documentation/blob/master/documentation/resources.md) has been created as an index to example schemas for the purpose of community discussions and development. An [XML schema](tdwg_dwc_classes.xsd) is provided to freely mix any Darwin Core Class in a global list and allow them to reference each other using the respective class identifier terms.
It is encouraged to use classes in a normalized way to avoid deep nesting. An [XML schema](tdwg_dwc_classes.xsd) is provided to freely mix any Darwin Core Class in a global list and allow them to reference each other using the respective class identifier terms.
#### 2.7.1 Normalized classes examples (non-normative)
Following is an example of using normalized classes to represent two related specimen occurrences (one of which has had a second identification) at one location following this class-based schema. Note that you can reuse the location definition here by referring to it via locationID:
Following is an example of using a normalized class-based schema to represent two related specimen occurrences from one Event. In this example a Western garter snake collected by Gordon W Gullion in 1949 was found to have eaten a Coastal giant salamander. Note that you can reuse the event definition here by referring to it via eventID:
```xml
<?xml version="1.0"?>
<dwr:DarwinRecordSet
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://rs.tdwg.org/dwc/dwcrecord/ http://rs.tdwg.org/dwc/xsd/tdwg_dwc_classes.xsd"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/"
xmlns:dwr="http://rs.tdwg.org/dwc/dwcrecord/">
<dcterms:Location>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
<dwc:country>Argentina</dwc:country>
<dwc:countryCode>AR</dwc:countryCode>
<dwc:stateProvince>Neuquén</dwc:stateProvince>
<dwc:locality>25 km al NNE de Bariloche por Ruta 40 (=237)</dwc:locality>
</dcterms:Location>
<dwc:Occurrence>
<dcterms:type>PhysicalObject</dcterms:type>
<dcterms:modified>2009-02-12T12:43:31</dcterms:modified>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Mammals</dwc:collectionCode>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14523</dwc:occurrenceID>
<dwc:basisOfRecord>PreservedSpecimen</dwc:basisOfRecord>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
</dwc:Occurrence>
<dwc:Identification>
<dwc:identificationID>http://guid.mvz.org/identifications/23459</dwc:identificationID>
<dwc:identifiedBy>Richard Sage</dwc:identifiedBy>
<dwc:dateIdentified>2000</dwc:dateIdentified>
<dwc:identificationQualifier>sp.</dwc:identificationQualifier>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14523</dwc:occurrenceID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:d79c11aa-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Identification>
<dwc:Taxon>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:d79c11aa-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
<dwc:scientificName>Ctenomys</dwc:scientificName>
<dwc:taxonRank>genus</dwc:taxonRank>
<dwc:nomenclaturalCode>ICZN</dwc:nomenclaturalCode>
<dwc:genus>Ctenomys</dwc:genus>
</dwc:Taxon>
<dwc:Identification>
<dwc:identificationID>http://guid.mvz.org/identifications/94752</dwc:identificationID>
<dwc:identifiedBy>James L Patton</dwc:identifiedBy>
<dwc:dateIdentified>2001-09-14</dwc:dateIdentified>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14523</dwc:occurrenceID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:df0a797c-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Identification>
<dwc:Taxon>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:df0a797c-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
<dwc:parentNameUsageID>urn:lsid:catalogueoflife.org:taxon:d79c11aa-29c1-102b-9a4a-00304854f820:col20120721</dwc:parentNameUsageID>
<dwc:scientificName>Ctenomys sociabilis</dwc:scientificName>
<dwc:scientificNameAuthorship>Pearson and Christie, 1985</dwc:scientificNameAuthorship>
<dwc:taxonRank>species</dwc:taxonRank>
<dwc:nomenclaturalCode>ICZN</dwc:nomenclaturalCode>
<dwc:higherClassification>Animalia; Chordata; Vertebrata; Mammalia; Theria; Eutheria; Rodentia; Hystricognatha; Hystricognathi; Ctenomyidae; Ctenomyini; Ctenomys</dwc:higherClassification>
<dwc:kingdom>Animalia</dwc:kingdom>
<dwc:phylum>Chordata</dwc:phylum>
<dwc:class>Mammalia</dwc:class>
<dwc:order>Rodentia</dwc:order>
<dwc:family>Ctenomyidae</dwc:family>
<dwc:genus>Ctenomys</dwc:genus>
<dwc:specificEpithet>sociabilis</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Occurrence>
<dcterms:type>PhysicalObject</dcterms:type>
<dcterms:modified>2009-02-12T12:43:31</dcterms:modified>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Mammals</dwc:collectionCode>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14524</dwc:occurrenceID>
<dwc:basisOfRecord>PreservedSpecimen</dwc:basisOfRecord>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
</dwc:Occurrence>
<dwc:Identification>
<dwc:identificationID>http://guid.mvz.org/identifications/94753</dwc:identificationID>
<dwc:identifiedBy>James L Patton</dwc:identifiedBy>
<dwc:dateIdentified>2001-09-14</dwc:dateIdentified>
<dwc:occurrenceID>urn:catalog:MVZ:Mammals:14524</dwc:occurrenceID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:df0a797c-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Identification>
<dwc:ResourceRelationship>
<dwc:resourceRelationshipID>http://guid.mvz.org/relations/23423</dwc:resourceRelationshipID>
<dwc:resourceID>urn:catalog:MVZ:Mammals:14523</dwc:resourceID>
<dwc:relatedResourceID>urn:catalog:MVZ:Mammals:14524</dwc:relatedResourceID>
<dwc:relationshipOfResource>offspring of</dwc:relationshipOfResource>
</dwc:ResourceRelationship>
<dwc:ResourceRelationship>
<dwc:resourceRelationshipID>http://guid.mvz.org/relations/23424</dwc:resourceRelationshipID>
<dwc:resourceID>urn:catalog:MVZ:Mammals:14524</dwc:resourceID>
<dwc:relatedResourceID>urn:catalog:MVZ:Mammals:14523</dwc:relatedResourceID>
<dwc:relationshipOfResource>mother of</dwc:relationshipOfResource>
</dwc:ResourceRelationship>
</dwr:DarwinRecordSet>
```
<?xml version="1.0" encoding="UTF-8"?>
<dwr:DarwinRecordSet xmlns:dwr="http://rs.tdwg.org/dwc/dwcrecord/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dwc="http://rs.tdwg.org/dwc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://rs.tdwg.org/dwc/dwcrecord/ http://rs.tdwg.org/dwc/xsd/tdwg_dwc_classes.xsd">
<dwc:Occurrence>
<dcterms:type>PhysicalObject</dcterms:type>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Amphibian and reptile specimens</dwc:collectionCode>
<dwc:catalogNumber>MVZ:Herp:51568</dwc:catalogNumber>
<dwc:recordedBy>Gordon W. Gullion</dwc:recordedBy>
<dwc:occurrenceID>http://arctos.database.museum/guid/MVZ:Herp:51568?seid=525813</dwc:occurrenceID>
<dwc:basisOfRecord>PreservedSpecimen</dwc:basisOfRecord>
<dwc:organismID>http://arctos.database.museum/guid/MVZ:Herp:51568</dwc:organismID>
<dwc:eventID>525813</dwc:eventID>
<dwc:associatedMedia>http://arctos.database.museum/MediaSearch.cfm?collection_object_id=10513964</dwc:associatedMedia>
<dwc:associatedOccurrences>"had stomach contents":"http://arctos.database.museum/guid/MVZ:Herp:51500?seid=670405"</dwc:associatedOccurrences>
</dwc:Occurrence>
<dwc:Organism>
<dwc:organismID>http://arctos.database.museum/guid/MVZ:Herp:51568</dwc:organismID>
<dwc:organismScope>multicellular organism</dwc:organismScope>
<dwc:associatedOrganisms>"ate":"http://arctos.database.museum/guid/MVZ:Herp:51500"</dwc:associatedOrganisms>
</dwc:Organism>
<dwc:Event>
<dwc:eventID>525813</dwc:eventID>
<dwc:eventDate>1949-09-02</dwc:eventDate>
<dwc:verbatimEventDate>2 Sep 1949</dwc:verbatimEventDate>
<dwc:locationID>https://arctos.database.museum/place.cfm?action=detail&amp;locality_id=10754971</dwc:locationID>
</dwc:Event>
<dcterms:Location>
<dwc:locationID>https://arctos.database.museum/place.cfm?action=detail&amp;locality_id=10754971</dwc:locationID>
<dwc:country>United States</dwc:country>
<dwc:countryCode>US</dwc:countryCode>
<dwc:stateProvince>California</dwc:stateProvince>
<dwc:county>Humboldt County</dwc:county>
<dwc:locality>Raccoon Creek, 3 mi N Willow Creek</dwc:locality>
</dcterms:Location>
<dwc:Identification>
<dwc:identifiedBy>Museum of Vertebrate Zoology, University of California, Berkeley</dwc:identifiedBy>
<dwc:dateIdentified>1999-01-27</dwc:dateIdentified>
<dwc:occurrenceID>http://arctos.database.museum/guid/MVZ:Herp:51568?seid=525813</dwc:occurrenceID>
<dwc:taxonID>https://www.gbif.org/species/2457545</dwc:taxonID>
</dwc:Identification>
<dwc:Taxon>
<dwc:taxonID>https://www.gbif.org/species/2457545</dwc:taxonID>
<dwc:scientificName>Thamnophis elegans (Baird &amp; Girard, 1853)</dwc:scientificName>
<dwc:taxonRank>species</dwc:taxonRank>
<dwc:genus>Thamnophis</dwc:genus>
<dwc:specificEpithet>elgans</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Occurrence>
<dcterms:type>PhysicalObject</dcterms:type>
<dwc:institutionCode>MVZ</dwc:institutionCode>
<dwc:collectionCode>Amphibian and reptile specimens</dwc:collectionCode>
<dwc:catalogNumber>MVZ:Herp:51500</dwc:catalogNumber>
<dwc:recordedBy>Gordon W. Gullion</dwc:recordedBy>
<dwc:occurrenceID>http://arctos.database.museum/guid/MVZ:Herp:51500?seid=670405</dwc:occurrenceID>
<dwc:basisOfRecord>PreservedSpecimen</dwc:basisOfRecord>
<dwc:eventID>525813</dwc:eventID>
<dwc:associatedMedia>http://arctos.database.museum/MediaSearch.cfm?collection_object_id=10513964</dwc:associatedMedia>
<dwc:associatedOccurrences>"found as stomach contents of":"http://arctos.database.museum/guid/MVZ:Herp:51568?seid=525813"</dwc:associatedOccurrences>
</dwc:Occurrence>
<dwc:Organism>
<dwc:organismID>http://arctos.database.museum/guid/MVZ:Herp:51500</dwc:organismID>
<dwc:organismScope>multicellular organism</dwc:organismScope>
<dwc:associatedOrganisms>"eaten by":"http://arctos.database.museum/guid/MVZ:Herp:51568"</dwc:associatedOrganisms>
</dwc:Organism>
<dwc:Identification>
<dwc:identifiedBy>Museum of Vertebrate Zoology, University of California, Berkeley</dwc:identifiedBy>
<dwc:dateIdentified>1999-01-27</dwc:dateIdentified>
<dwc:occurrenceID>http://arctos.database.museum/guid/MVZ:Herp:51500?seid=670405</dwc:occurrenceID>
<dwc:taxonID>https://www.gbif.org/species/2432022</dwc:taxonID>
</dwc:Identification>
<dwc:Taxon>
<dwc:taxonID>https://www.gbif.org/species/2432022</dwc:taxonID>
<dwc:scientificName>Dicamptodon tenebrosus (Baird &amp; Girard, 1852)</dwc:scientificName>
<dwc:taxonRank>species</dwc:taxonRank>
<dwc:genus>Dicamptodon</dwc:genus>
<dwc:specificEpithet>tenebrosus</dwc:specificEpithet>
</dwc:Taxon>
<dwc:ResourceRelationship>
<dwc:resourceID>http://arctos.database.museum/guid/MVZ:Herp:51568</dwc:resourceID>
<dwc:relationshipOfResource>ate</dwc:relationshipOfResource>
<dwc:relatedResourceID>http://arctos.database.museum/guid/MVZ:Herp:51500</dwc:relatedResourceID>
</dwc:ResourceRelationship>
<dwc:ResourceRelationship>
<dwc:resourceID>http://arctos.database.museum/guid/MVZ:Herp:51500</dwc:resourceID>
<dwc:relationshipOfResource>eaten by</dwc:relationshipOfResource>
<dwc:relatedResourceID>http://arctos.database.museum/guid/MVZ:Herp:51568</dwc:relatedResourceID>
</dwc:ResourceRelationship>
</dwr:DarwinRecordSet>```
Here is different example demonstrating area count observations for events on two different days at one location. Note that we omit the identification class here as there is not identification related data and link via the `taxonID` directly:
Here is an example demonstrating area count observations for Events on two different days at the same location. Note that we omit the identification class here as there is no identification-related data and link directly to the Taxon via the `taxonID`:
```xml
<?xml version="1.0"?>
<dwr:DarwinRecordSet
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://rs.tdwg.org/dwc/dwcrecord/ http://rs.tdwg.org/dwc/xsd/tdwg_dwc_classes.xsd"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/"
xmlns:dwr="http://rs.tdwg.org/dwc/dwcrecord/">
<dcterms:Location>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
<dwc:country>Argentina</dwc:country>
<dwc:countryCode>AR</dwc:countryCode>
<dwc:stateProvince>Neuquén</dwc:stateProvince>
<dwc:locality>Valle Limay, Estancia Rincon Grande, 48 ha area with centroid at this point</dwc:locality>
<dwc:decimalLatitude>-40.97467</dwc:decimalLatitude>
<dwc:decimalLongitude>-71.0734</dwc:decimalLongitude>
<dwc:geodeticDatum>WGS84</dwc:geodeticDatum>
<dwc:coordinateUncertaintyInMeters>200</dwc:coordinateUncertaintyInMeters>
</dcterms:Location>
<dwc:Event>
<dwc:eventID>http://guid.mvz.org/events/2006/11/26/17</dwc:eventID>
<dwc:samplingProtocol>area count</dwc:samplingProtocol>
<dwc:eventDate>2006-11-26</dwc:eventDate>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
</dwc:Event>
<dwc:Occurrence>
<dwc:occurrenceID>urn:catalog:AUDCLO:EBIRD:OBS64515288</dwc:occurrenceID>
<dcterms:type>Event</dcterms:type>
<dcterms:modified>2009-02-17T07:33:04Z</dcterms:modified>
<dwc:institutionCode>AUDCLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>2</dwc:individualCount>
<dwc:eventID>http://guid.mvz.org/events/2006/11/26/17</dwc:eventID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000ee00-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Occurrence>
<dwc:Taxon>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000ee00-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
<dwc:scientificName>Anthus hellmayri Hartert, 1909</dwc:scientificName>
<dwc:class>Aves</dwc:class>
<dwc:genus>Anthus</dwc:genus>
<dwc:specificEpithet>hellmayri</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Occurrence>
<dwc:occurrenceID>urn:catalog:AUDCLO:EBIRD:OBS64515286</dwc:occurrenceID>
<dcterms:type>Event</dcterms:type>
<dcterms:modified>2009-02-17T07:33:04Z</dcterms:modified>
<dwc:institutionCode>AUDCLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>1</dwc:individualCount>
<dwc:eventID>http://guid.mvz.org/events/2006/11/26/17</dwc:eventID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000e838-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Occurrence>
<dwc:Taxon>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000e838-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
<dwc:scientificName>Anthus correndera Vieillot, 1818</dwc:scientificName>
<dwc:class>Aves</dwc:class>
<dwc:genus>Anthus</dwc:genus>
<dwc:specificEpithet>correndera</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Event>
<dwc:eventID>http://guid.mvz.org/events/2006/11/27/6</dwc:eventID>
<dwc:samplingProtocol>area count</dwc:samplingProtocol>
<dwc:eventDate>2006-11-27</dwc:eventDate>
<dwc:locationID>http://guid.mvz.org/sites/arg/127</dwc:locationID>
</dwc:Event>
<dwc:Occurrence>
<dwc:occurrenceID>urn:catalog:AUDCLO:EBIRD:OBS64515333</dwc:occurrenceID>
<dcterms:type>Event</dcterms:type>
<dcterms:modified>2009-02-17T07:33:04Z</dcterms:modified>
<dwc:institutionCode>AUDCLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>1</dwc:individualCount>
<dwc:eventID>http://guid.mvz.org/events/2006/11/27/6</dwc:eventID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000ee00-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Occurrence>
<dwc:Occurrence>
<dwc:occurrenceID>urn:catalog:AUDCLO:EBIRD:OBS64515331</dwc:occurrenceID>
<dcterms:type>Event</dcterms:type>
<dcterms:modified>2009-02-17T07:33:04Z</dcterms:modified>
<dwc:institutionCode>AUDCLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>2</dwc:individualCount>
<dwc:eventID>http://guid.mvz.org/events/2006/11/27/6</dwc:eventID>
<dwc:taxonID>urn:lsid:catalogueoflife.org:taxon:f000ee00-29c1-102b-9a4a-00304854f820:col20120721</dwc:taxonID>
</dwc:Occurrence>
<?xml version="1.0" encoding="UTF-8"?>
<dwr:DarwinRecordSet xmlns:dwr="http://rs.tdwg.org/dwc/dwcrecord/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dwc="http://rs.tdwg.org/dwc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://rs.tdwg.org/dwc/dwcrecord/ http://rs.tdwg.org/dwc/xsd/tdwg_dwc_classes.xsd">
<dcterms:Location>
<dwc:locationID>AR-NQ-LL-ERG</dwc:locationID>
<dwc:country>Argentina</dwc:country>
<dwc:countryCode>AR</dwc:countryCode>
<dwc:stateProvince>Neuquén</dwc:stateProvince>
<dwc:locality>Valle Limay, Estancia Rincon Grande, 48 ha area with centroid at this point</dwc:locality>
<dwc:decimalLatitude>-40.97467</dwc:decimalLatitude>
<dwc:decimalLongitude>-71.0734</dwc:decimalLongitude>
<dwc:geodeticDatum>WGS84</dwc:geodeticDatum>
<dwc:coordinateUncertaintyInMeters>200</dwc:coordinateUncertaintyInMeters>
</dcterms:Location>
<dwc:Event>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/26</dwc:eventID>
<dwc:samplingProtocol>area count</dwc:samplingProtocol>
<dwc:eventDate>2006-11-26</dwc:eventDate>
<dwc:locationID>AR-NQ-LL-ERG</dwc:locationID>
</dwc:Event>
<dwc:Occurrence>
<dwc:occurrenceID>URN:catalog:CLO:EBIRD:OBS64515288</dwc:occurrenceID>
<dwc:institutionCode>CLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>2</dwc:individualCount>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/26</dwc:eventID>
<dwc:taxonID>https://www.gbif.org/species/2490280</dwc:taxonID>
</dwc:Occurrence>
<dwc:Taxon>
<dwc:taxonID>https://www.gbif.org/species/2490280</dwc:taxonID>
<dwc:scientificName>Anthus hellmayri Hartert, 1909</dwc:scientificName>
<dwc:class>Aves</dwc:class>
<dwc:genus>Anthus</dwc:genus>
<dwc:specificEpithet>hellmayri</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Occurrence>
<dwc:occurrenceID>URN:catalog:CLO:EBIRD:OBS64515286</dwc:occurrenceID>
<dwc:institutionCode>CLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>4</dwc:individualCount>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/26</dwc:eventID>
<dwc:taxonID>https://www.gbif.org/species/9286490</dwc:taxonID>
</dwc:Occurrence>
<dwc:Taxon>
<dwc:taxonID>https://www.gbif.org/species/9286490</dwc:taxonID>
<dwc:scientificName>Anthus correndera Vieillot, 1818</dwc:scientificName>
<dwc:class>Aves</dwc:class>
<dwc:genus>Anthus</dwc:genus>
<dwc:specificEpithet>correndera</dwc:specificEpithet>
</dwc:Taxon>
<dwc:Event>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/27</dwc:eventID>
<dwc:samplingProtocol>area count</dwc:samplingProtocol>
<dwc:eventDate>2006-11-27</dwc:eventDate>
<dwc:locationID>AR-NQ-LL-ERG</dwc:locationID>
</dwc:Event>
<dwc:Occurrence>
<dwc:occurrenceID>URN:catalog:CLO:EBIRD:OBS64515333</dwc:occurrenceID>
<dwc:institutionCode>CLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>2</dwc:individualCount>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/27</dwc:eventID>
<dwc:taxonID>https://www.gbif.org/species/2490280</dwc:taxonID>
</dwc:Occurrence>
<dwc:Occurrence>
<dwc:occurrenceID>urn:catalog:AUDCLO:EBIRD:OBS64515331</dwc:occurrenceID>
<dwc:institutionCode>CLO</dwc:institutionCode>
<dwc:collectionCode>EBIRD</dwc:collectionCode>
<dwc:basisOfRecord>HumanObservation</dwc:basisOfRecord>
<dwc:individualCount>4</dwc:individualCount>
<dwc:eventID>JW-AR-NQ-LL-ERG/2006/11/27</dwc:eventID>
<dwc:taxonID>https://www.gbif.org/species/9286490</dwc:taxonID>
</dwc:Occurrence>
</dwr:DarwinRecordSet>
```

View File

@ -13,6 +13,7 @@
<!-- Schema -->
<!-- ==================================================================== -->
<xs:schema
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="unqualified" version="0.5">
@ -76,13 +77,14 @@
<xs:simpleType name="dateTimeISO">
<xs:annotation>
<xs:documentation xml:lang="en">
The date and time expressed in a way conforming to a subset of ISO 8601. Meant to be exactly the same as DateTimeISO defined in ABCD.
The date and time expressed in a way conforming to a subset of ISO 8601.
Meant to be exactly the same as DateTimeISO defined in ABCD.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\d\d\d\d(\-(0[1-9]|1[012])(\-((0[1-9])|1\d|2\d|3[01])(T(0\d|1\d|2[0-3])(:[0-5]\d){0,2})?)?)?|\-\-(0[1-9]|1[012])(\-(0[1-9]|1\d|2\d|3[01]))?|\-\-\-(0[1-9]|1\d|2\d|3[01])">
<xs:pattern
value="\d\d\d\d(\-(0[1-9]|1[012])(\-((0[1-9])|1\d|2\d|3[01])(T(0\d|1\d|2[0-3])(:[0-5]\d){0,2})?)?)?|\-\-(0[1-9]|1[012])(\-(0[1-9]|1\d|2\d|3[01]))?|\-\-\-(0[1-9]|1\d|2\d|3[01])">
</xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -1,14 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema version="2014-11-08" xmlns:xs="http://www.w3.org/2001/XMLSchema"
<xs:schema
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://rs.tdwg.org/dwc/terms/"
xmlns:chrono="http://rs.tdwg.org/chrono/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/">
<xs:include schemaLocation="tdwg_dwcterms.xsd"/>
<xs:annotation>
<xs:documentation>
This schema redefines all darwin core classes to disallow compound
objects - within a class no other nested class is allowed. It
allows properties to occur in any order and as many times as needed.
This schema redefines all Darwin Core classes to disallow compound objects -
within a class no other nested class is allowed. It allows properties to
occur in any order and as many times as needed.
</xs:documentation>
</xs:annotation>
@ -57,8 +60,6 @@
</xs:element>
<!-- 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">
@ -68,7 +69,6 @@
</xs:choice>
</xs:complexType>
</xs:element>
-->
<!-- GEOLOGICALCONTEXT domain -->
<xs:element name="GeologicalContext" substitutionGroup="dwc:anyClass">
@ -103,17 +103,6 @@
</xs:complexType>
</xs:element>
<!-- RESOURCE RELATIONSHIP domain -->
<xs:element name="ResourceRelationship" substitutionGroup="dwc:anyClass">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="dwc:anyIdentifier"/>
<xs:element ref="dwc:anyResourceRelationshipTerm"/>
<xs:element ref="dwc:anyRecordLevelTerm"/>
</xs:choice>
</xs:complexType>
</xs:element>
<!-- MEASUREMENTORFACT domain -->
<xs:element name="MeasurementOrFact" substitutionGroup="dwc:anyClass">
<xs:complexType>
@ -125,4 +114,25 @@
</xs:complexType>
</xs:element>
<!-- RESOURCE RELATIONSHIP domain -->
<xs:element name="ResourceRelationship" substitutionGroup="dwc:anyClass">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="dwc:anyIdentifier"/>
<xs:element ref="dwc:anyResourceRelationshipTerm"/>
<xs:element ref="dwc:anyRecordLevelTerm"/>
</xs:choice>
</xs:complexType>
</xs:element>
<!-- CHRONOMETRIC AGE domain -->
<xs:element name="ChronometricAge" substitutionGroup="dwc:anyClass">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="dwc:anyIdentifier"/>
<xs:element ref="dwc:anyChronometricAgeTerm"/>
<xs:element ref="dwc:anyRecordLevelTerm"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -1,14 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema version="0.1" xmlns:xs="http://www.w3.org/2001/XMLSchema"
<xs:schema
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://rs.tdwg.org/dwc/dwcrecord/"
xmlns:dwr="http://rs.tdwg.org/dwc/dwcrecord/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/">
<xs:import namespace="http://rs.tdwg.org/dwc/terms/" schemaLocation="tdwg_dwc_class_terms.xsd"/>
<xs:import
namespace="http://rs.tdwg.org/dwc/terms/"
schemaLocation="tdwg_dwc_class_terms.xsd"/>
<xs:annotation>
<xs:documentation>
This schema defines a container for all darwin core classes with no notion of a record per se.
All classes are treated equally.
This schema defines a container for all Darwin Core classes with no notion
of a record per se. All classes are treated equally.
</xs:documentation>
</xs:annotation>
@ -19,5 +23,4 @@
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema version="2014-11-08"
<xs:schema
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://rs.tdwg.org/dwc/terms/"
xmlns:simple="http://rs.tdwg.org/dwc/xsd/simpledarwincore/"
xmlns:chrono="http://rs.tdwg.org/chrono/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/">
<xs:include schemaLocation="tdwg_dwcterms.xsd"/>
<xs:import namespace="http://rs.tdwg.org/dwc/xsd/simpledarwincore/" schemaLocation="tdwg_dwc_simple.xsd"/>
<xs:import
namespace="http://rs.tdwg.org/dwc/xsd/simpledarwincore/"
schemaLocation="tdwg_dwc_simple.xsd"/>
<xs:annotation>
<xs:documentation>
@ -35,8 +39,10 @@
<xs:complexType>
<xs:all>
<xs:element ref="dwc:resourceRelationshipID" minOccurs="0"/>
<xs:element ref="dwc:resourceID" minOccurs="1"/>
<xs:element ref="dwc:relationshipOfResourceID" minOccurs="0"/>
<xs:element ref="dwc:relatedResourceID" minOccurs="1"/>
<xs:element ref="dwc:relationshipOfResource" minOccurs="1"/>
<xs:element ref="dwc:relationshipOfResource" minOccurs="0"/>
<xs:element ref="dwc:relationshipAccordingTo" minOccurs="0"/>
<xs:element ref="dwc:relationshipEstablishedDate" minOccurs="0"/>
<xs:element ref="dwc:relationshipRemarks" minOccurs="0"/>
@ -44,4 +50,29 @@
</xs:complexType>
</xs:element>
<!-- CHRONOMETRIC AGE -->
<xs:element name="ChronometricAge" substitutionGroup="simple:anyExtension">
<xs:complexType>
<xs:all>
<xs:element ref="chrono:chronometricAgeID" minOccurs="0"/>
<xs:element ref="chrono:verbatimChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeProtocol" minOccurs="0"/>
<xs:element ref="chrono:uncalibratedChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeConversionProtocol" minOccurs="0"/>
<xs:element ref="chrono:earliestChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:earliestChronometricReferenceSystem" minOccurs="0"/>
<xs:element ref="chrono:latestChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:latestChronometricAgeReferenceSystem" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeUncertaintyInYears" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeUncertaintyMethod" minOccurs="0"/>
<xs:element ref="chrono:materialDated" minOccurs="0"/>
<xs:element ref="chrono:materialDatedID" minOccurs="0"/>
<xs:element ref="chrono:materialDatedRelationship" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeDeterminedBy" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeDeterminedDate" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeReferences" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeRemarks" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -1,12 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema version="2015-03-19"
<xs:schema
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://rs.tdwg.org/dwc/xsd/simpledarwincore/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dwr="http://rs.tdwg.org/dwc/xsd/simpledarwincore/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/">
<xs:import namespace="http://rs.tdwg.org/dwc/terms/" schemaLocation="tdwg_dwc_extensions.xsd"/>
<xs:import namespace="http://purl.org/dc/terms/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd"/>
<xs:import
namespace="http://rs.tdwg.org/dwc/terms/"
schemaLocation="tdwg_dwc_extensions.xsd"/>
<xs:import
namespace="http://purl.org/dc/elements/1.1/"
schemaLocation="http://dublincore.org/schemas/xmls/qdc/dc.xsd"/>
<xs:import
namespace="http://purl.org/dc/terms/"
schemaLocation="http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd"/>
<xs:annotation>
<xs:documentation>
This schema defines Simple Darwin Core records and record sets using the
@ -18,7 +27,7 @@
<xs:annotation>
<xs:documentation>Simple container to encode multiple darwin core records
that have no notion of which class they are. They can therefore represent
a taxon, an observation or just a locality, for example.
a taxon, an observation, or just a locality, for example.
</xs:documentation>
</xs:annotation>
<xs:complexType>
@ -31,9 +40,9 @@
<xs:complexType>
<xs:all>
<!-- Record-level terms -->
<xs:element ref="dcterms:type" minOccurs="0"/>
<xs:element ref="dc:type" minOccurs="0"/>
<xs:element ref="dcterms:modified" minOccurs="0"/>
<xs:element ref="dcterms:language" minOccurs="0"/>
<xs:element ref="dc:language" minOccurs="0"/>
<xs:element ref="dcterms:license" minOccurs="0"/>
<xs:element ref="dcterms:rightsHolder" minOccurs="0"/>
<xs:element ref="dcterms:accessRights" minOccurs="0"/>
@ -55,6 +64,7 @@
<xs:element ref="dwc:catalogNumber" minOccurs="0"/>
<xs:element ref="dwc:recordNumber" minOccurs="0"/>
<xs:element ref="dwc:recordedBy" minOccurs="0"/>
<xs:element ref="dwc:recordedByID" minOccurs="0"/>
<xs:element ref="dwc:individualCount" minOccurs="0"/>
<xs:element ref="dwc:organismQuantity" minOccurs="0"/>
<xs:element ref="dwc:organismQuantityType" minOccurs="0"/>
@ -63,10 +73,14 @@
<xs:element ref="dwc:reproductiveCondition" minOccurs="0"/>
<xs:element ref="dwc:behavior" minOccurs="0"/>
<xs:element ref="dwc:establishmentMeans" minOccurs="0"/>
<xs:element ref="dwc:degreeOfEstablishment" minOccurs="0"/>
<xs:element ref="dwc:pathway" minOccurs="0"/>
<xs:element ref="dwc:georeferenceVerificationStatus" minOccurs="0"/>
<xs:element ref="dwc:occurrenceStatus" minOccurs="0"/>
<xs:element ref="dwc:preparations" minOccurs="0"/>
<xs:element ref="dwc:disposition" minOccurs="0"/>
<xs:element ref="dwc:associatedMedia" minOccurs="0"/>
<xs:element ref="dwc:associatedOccurrences" minOccurs="0"/>
<xs:element ref="dwc:associatedReferences" minOccurs="0"/>
<xs:element ref="dwc:associatedSequences" minOccurs="0"/>
<xs:element ref="dwc:associatedTaxa" minOccurs="0"/>
@ -76,7 +90,6 @@
<xs:element ref="dwc:organismID" minOccurs="0"/>
<xs:element ref="dwc:organismName" minOccurs="0"/>
<xs:element ref="dwc:organismScope" minOccurs="0"/>
<xs:element ref="dwc:associatedOccurrences" minOccurs="0"/>
<xs:element ref="dwc:associatedOrganisms" minOccurs="0"/>
<xs:element ref="dwc:previousIdentifications" minOccurs="0"/>
<xs:element ref="dwc:organismRemarks" minOccurs="0"/>
@ -119,6 +132,7 @@
<xs:element ref="dwc:minimumElevationInMeters" minOccurs="0"/>
<xs:element ref="dwc:maximumElevationInMeters" minOccurs="0"/>
<xs:element ref="dwc:verbatimElevation" minOccurs="0"/>
<xs:element ref="dwc:verticalDatum" minOccurs="0"/>
<xs:element ref="dwc:minimumDepthInMeters" minOccurs="0"/>
<xs:element ref="dwc:maximumDepthInMeters" minOccurs="0"/>
<xs:element ref="dwc:verbatimDepth" minOccurs="0"/>
@ -144,7 +158,6 @@
<xs:element ref="dwc:georeferencedDate" minOccurs="0"/>
<xs:element ref="dwc:georeferenceProtocol" minOccurs="0"/>
<xs:element ref="dwc:georeferenceSources" minOccurs="0"/>
<xs:element ref="dwc:georeferenceVerificationStatus" minOccurs="0"/>
<xs:element ref="dwc:georeferenceRemarks" minOccurs="0"/>
<!-- GeologicalContext terms -->
<xs:element ref="dwc:geologicalContextID" minOccurs="0"/>
@ -167,9 +180,11 @@
<xs:element ref="dwc:bed" minOccurs="0"/>
<!-- Identification terms -->
<xs:element ref="dwc:identificationID" minOccurs="0"/>
<xs:element ref="dwc:verbatimIdentification" minOccurs="0"/>
<xs:element ref="dwc:identificationQualifier" minOccurs="0"/>
<xs:element ref="dwc:typeStatus" minOccurs="0"/>
<xs:element ref="dwc:identifiedBy" minOccurs="0"/>
<xs:element ref="dwc:identifiedByID" minOccurs="0"/>
<xs:element ref="dwc:dateIdentified" minOccurs="0"/>
<xs:element ref="dwc:identificationReferences" minOccurs="0"/>
<xs:element ref="dwc:identificationVerificationStatus" minOccurs="0"/>
@ -196,10 +211,14 @@
<xs:element ref="dwc:class" minOccurs="0"/>
<xs:element ref="dwc:order" minOccurs="0"/>
<xs:element ref="dwc:family" minOccurs="0"/>
<xs:element ref="dwc:subfamily" minOccurs="0"/>
<xs:element ref="dwc:genus" minOccurs="0"/>
<xs:element ref="dwc:genericName" minOccurs="0"/>
<xs:element ref="dwc:subgenus" minOccurs="0"/>
<xs:element ref="dwc:infragenericEpithet" minOccurs="0"/>
<xs:element ref="dwc:specificEpithet" minOccurs="0"/>
<xs:element ref="dwc:infraspecificEpithet" minOccurs="0"/>
<xs:element ref="dwc:cultivarEpithet" minOccurs="0"/>
<xs:element ref="dwc:taxonRank" minOccurs="0"/>
<xs:element ref="dwc:verbatimTaxonRank" minOccurs="0"/>
<xs:element ref="dwc:scientificNameAuthorship" minOccurs="0"/>

View File

@ -1,39 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
version="2015-03-19"
version="2021-07-15"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://rs.tdwg.org/dwc/terms/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dcelem="http://purl.org/dc/elements/1.1/"
xmlns:chrono="http://rs.tdwg.org/chrono/terms/"
xmlns:dwc="http://rs.tdwg.org/dwc/terms/">
<xs:annotation>
<xs:documentation xml:lang="en">
The Generic Darwin Core schema defining all property terms as global elements.
Domain classes are not defined here, but in a separate schema (tdwg_dwcclasses.xsd) with the same namespace.
There are two ways in which references to domains can be defined:
a) through an abstract base term anyXXXTerm, which is derived from the type dwc:anyPropery and which all properties
for that domain use as their substitution group. If you refer to dwc:anyXXXTerm in your schema, you will be able
to reference any of the terms, but it will be impossible to create a sequence of all terms occurring only once.
b) through a group of elements called XXXTerms, which reference properties exactly once as a sequence.
This group can be used to refer to all the domain properties only once. In order to make a property required, you
must create your own group referring to the individual dwc terms.
If you want to specify every term once at most and in any order, you will also have to refer to the individual dwc
term yourself - a limitation of the xs:all model.
Domain classes are not defined here, but in a separate schema
(tdwg_dwc_classes.xsd) with the same namespace. There are two ways in which
references to domains can be defined:
a) through an abstract base term anyXXXTerm, which is derived from the type
dwc:anyPropery and which all properties for that domain use as their
substitution group. If you refer to dwc:anyXXXTerm in your schema, you
will be able to reference any of the terms, but it will be impossible to
create a sequence of all terms occurring only once.
b) through a group of elements called XXXTerms, which reference properties
exactly once as a sequence. This group can be used to refer to all the
domain properties only once each. In order to make a property required,
you must create your own group referring to the individual dwc terms. If
you want to specify every term once at most and in any order, you will
also have to refer to the individual dwc term yourself - a limitation of
the xs:all model.
</xs:documentation>
</xs:annotation>
<!-- tdwg_basetypes.xsd defines custom data types such as dateTimeISO to allow dates or the forms YYYY and YYYY-MM. -->
<!-- tdwg_basetypes.xsd defines custom data type restrictions such as dateTimeISO,
which allows dates of the forms YYYY and YYYY-MM. -->
<xs:include schemaLocation="tdwg_basetypes.xsd"/>
<xs:import namespace="http://purl.org/dc/terms/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd"/>
<xs:import namespace="http://purl.org/dc/elements/1.1/" schemaLocation="http://dublincore.org/schemas/xmls/qdc/dc.xsd"/>
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
<xs:import
namespace="http://purl.org/dc/terms/"
schemaLocation="http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd"/>
<xs:import
namespace="http://purl.org/dc/elements/1.1/"
schemaLocation="http://dublincore.org/schemas/xmls/qdc/dc.xsd"/>
<xs:import
namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
<!-- ANY DWC TERM -->
<xs:element name="any" abstract="true"/>
<!-- ANY DWC IDENTIFIER -->
<xs:element name="anyIdentifier" abstract="true" substitutionGroup="dwc:any"/>
<xs:group name="IdentifierTerms">
<xs:annotation>
<xs:documentation>Group of all Darwin Core identifier terms as a convenience to construct other schemas</xs:documentation>
<xs:documentation>Group of all Darwin Core class identifier terms as a
convenience to construct other schemas</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="dwc:occurrenceID" minOccurs="0"/>
@ -44,15 +61,19 @@
<xs:element ref="dwc:geologicalContextID" minOccurs="0"/>
<xs:element ref="dwc:identificationID" minOccurs="0"/>
<xs:element ref="dwc:taxonID" minOccurs="0"/>
<xs:element ref="dwc:resourceRelationshipID" minOccurs="0"/>
<xs:element ref="dwc:measurementID" minOccurs="0"/>
<xs:element ref="dwc:resourceRelationshipID" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeID" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- ANY DWC PROPERTY TERM -->
<xs:element name="anyProperty" abstract="true" substitutionGroup="dwc:any"/>
<!-- type="dwc:simpleProperty" -->
<!-- ANY DWC CLASS TERM -->
<xs:element name="anyClass" abstract="true" substitutionGroup="dwc:any"/>
<!--
All TERMS listed BY domain
Every domain has its own substitutionGroup
@ -60,7 +81,8 @@
<!-- RECORD-LEVEL domainless terms -->
<xs:element name="anyRecordLevelTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<!-- domain properties -->
<!-- the Dublin Core terms applicable for Darwin Core are defined in the dublin_core.xsd and use this substitution group -->
<!-- the Dublin Core terms applicable for Darwin Core are defined in the
Dublin Core schemas and use this substitution group -->
<xs:element name="institutionID" substitutionGroup="dwc:anyRecordLevelTerm" type="xs:string"/>
<xs:element name="collectionID" substitutionGroup="dwc:anyRecordLevelTerm" type="xs:string"/>
<xs:element name="datasetID" substitutionGroup="dwc:anyRecordLevelTerm" type="xs:string"/>
@ -74,9 +96,9 @@
<xs:element name="dynamicProperties" substitutionGroup="dwc:anyRecordLevelTerm" type="xs:string"/>
<xs:group name="RecordLevelTerms">
<xs:sequence>
<xs:element ref="dcterms:type" minOccurs="0"/>
<xs:element ref="dc:type" minOccurs="0"/>
<xs:element ref="dcterms:modified" minOccurs="0"/>
<xs:element ref="dcterms:language" minOccurs="0"/>
<xs:element ref="dc:language" minOccurs="0"/>
<xs:element ref="dcterms:license" minOccurs="0"/>
<xs:element ref="dcterms:rightsHolder" minOccurs="0"/>
<xs:element ref="dcterms:accessRights" minOccurs="0"/>
@ -95,6 +117,7 @@
<xs:element ref="dwc:dynamicProperties" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- OCCURRENCE domain -->
<xs:element name="anyOccurrenceTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="occurrenceID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -102,6 +125,7 @@
<xs:element name="catalogNumber" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="recordNumber" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="recordedBy" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="recordedByID" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="individualCount" type="xs:positiveInteger" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="organismQuantity" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="organismQuantityType" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
@ -110,11 +134,15 @@
<xs:element name="reproductiveCondition" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="behavior" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="establishmentMeans" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="degreeOfEstablishmentMeans" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="pathway" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="georeferenceVerificationStatus" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="occurrenceStatus" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="preparations" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="disposition" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="associatedMedia" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="associatedReferences" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="associatedOccurrences" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="associatedSequences" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="associatedTaxa" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
<xs:element name="otherCatalogNumbers" type="xs:string" substitutionGroup="dwc:anyOccurrenceTerm"/>
@ -124,6 +152,7 @@
<xs:element ref="dwc:catalogNumber" minOccurs="0"/>
<xs:element ref="dwc:recordNumber" minOccurs="0"/>
<xs:element ref="dwc:recordedBy" minOccurs="0"/>
<xs:element ref="dwc:recordedByID" minOccurs="0"/>
<xs:element ref="dwc:individualCount" minOccurs="0"/>
<xs:element ref="dwc:organismQuantity" minOccurs="0"/>
<xs:element ref="dwc:organismQuantityType" minOccurs="0"/>
@ -132,24 +161,28 @@
<xs:element ref="dwc:reproductiveCondition" minOccurs="0"/>
<xs:element ref="dwc:behavior" minOccurs="0"/>
<xs:element ref="dwc:establishmentMeans" minOccurs="0"/>
<xs:element ref="dwc:degreeOfEstablishmentMeans" minOccurs="0"/>
<xs:element ref="dwc:pathway" minOccurs="0"/>
<xs:element ref="dwc:georeferenceVerificationStatus" minOccurs="0"/>
<xs:element ref="dwc:occurrenceStatus" minOccurs="0"/>
<xs:element ref="dwc:preparations" minOccurs="0"/>
<xs:element ref="dwc:disposition" minOccurs="0"/>
<xs:element ref="dwc:associatedMedia" minOccurs="0"/>
<xs:element ref="dwc:associatedReferences" minOccurs="0"/>
<xs:element ref="dwc:associatedOccurrences" minOccurs="0"/>
<xs:element ref="dwc:associatedSequences" minOccurs="0"/>
<xs:element ref="dwc:associatedTaxa" minOccurs="0"/>
<xs:element ref="dwc:otherCatalogNumbers" minOccurs="0"/>
<xs:element ref="dwc:occurrenceRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- ORGANISM domain -->
<xs:element name="anyOrganismTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="organismID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
<!-- domain properties -->
<xs:element name="organismName" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
<xs:element name="organismScope" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
<xs:element name="associatedOccurrences" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
<xs:element name="associatedOrganisms" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
<xs:element name="previousIdentifications" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
<xs:element name="organismRemarks" type="xs:string" substitutionGroup="dwc:anyOrganismTerm"/>
@ -157,16 +190,17 @@
<xs:sequence>
<xs:element ref="dwc:organismName" minOccurs="0"/>
<xs:element ref="dwc:organismScope" minOccurs="0"/>
<xs:element ref="dwc:associatedOccurrences" minOccurs="0"/>
<xs:element ref="dwc:associatedOrganisms" minOccurs="0"/>
<xs:element ref="dwc:previousIdentifications" minOccurs="0"/>
<xs:element ref="dwc:organismRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- MaterialSample domain -->
<xs:element name="anyMaterialSampleTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="materialSampleID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
<!-- domain properties -->
<!-- EVENT domain -->
<xs:element name="anyEventTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="eventID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -183,9 +217,9 @@
<xs:element name="habitat" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="fieldNumber" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="samplingProtocol" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="samplingEffort" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="sampleSizeValue" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="sampleSizeUnit" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="samplingEffort" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="fieldNotes" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:element name="eventRemarks" type="xs:string" substitutionGroup="dwc:anyEventTerm"/>
<xs:group name="EventTerms">
@ -202,13 +236,14 @@
<xs:element ref="dwc:habitat" minOccurs="0"/>
<xs:element ref="dwc:fieldNumber" minOccurs="0"/>
<xs:element ref="dwc:samplingProtocol" minOccurs="0"/>
<xs:element ref="dwc:samplingEffort" minOccurs="0"/>
<xs:element ref="dwc:sampleSizeValue" minOccurs="0"/>
<xs:element ref="dwc:sampleSizeUnit" minOccurs="0"/>
<xs:element ref="dwc:samplingEffort" minOccurs="0"/>
<xs:element ref="dwc:fieldNotes" minOccurs="0"/>
<xs:element ref="dwc:eventRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- dcterms:LOCATION domain -->
<xs:element name="anyLocationTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="locationID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -229,6 +264,7 @@
<xs:element name="minimumElevationInMeters" type="xs:double" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="maximumElevationInMeters" type="xs:double" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="verbatimElevation" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="verticalDatum" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="minimumDepthInMeters" type="xs:double" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="maximumDepthInMeters" type="xs:double" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="verbatimDepth" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
@ -254,7 +290,6 @@
<xs:element name="georeferencedDate" type="dwc:dateTimeISO" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="georeferenceProtocol" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="georeferenceSources" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="georeferenceVerificationStatus" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:element name="georeferenceRemarks" type="xs:string" substitutionGroup="dwc:anyLocationTerm"/>
<xs:group name="LocationTerms">
<xs:sequence>
@ -274,6 +309,7 @@
<xs:element ref="dwc:minimumElevationInMeters" minOccurs="0"/>
<xs:element ref="dwc:maximumElevationInMeters" minOccurs="0"/>
<xs:element ref="dwc:verbatimElevation" minOccurs="0"/>
<xs:element ref="dwc:verticalDatum" minOccurs="0"/>
<xs:element ref="dwc:minimumDepthInMeters" minOccurs="0"/>
<xs:element ref="dwc:maximumDepthInMeters" minOccurs="0"/>
<xs:element ref="dwc:verbatimDepth" minOccurs="0"/>
@ -298,10 +334,10 @@
<xs:element ref="dwc:georeferencedDate" minOccurs="0"/>
<xs:element ref="dwc:georeferenceProtocol" minOccurs="0"/>
<xs:element ref="dwc:georeferenceSources" minOccurs="0"/>
<xs:element ref="dwc:georeferenceVerificationStatus" minOccurs="0"/>
<xs:element ref="dwc:georeferenceRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- GEOLOGICALCONTEXT domain -->
<xs:element name="anyGeologicalContextTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="geologicalContextID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -344,28 +380,34 @@
<xs:element ref="dwc:bed" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- IDENTIFICATION domain -->
<xs:element name="anyIdentificationTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="identificationID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
<!-- domain properties -->
<xs:element name="verbatimIdentification" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identificationQualifier" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="typeStatus" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identifiedBy" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identifiedByID" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="dateIdentified" type="dwc:dateTimeISO" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identificationReferences" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identificationVerificationStatus" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:element name="identificationRemarks" type="xs:string" substitutionGroup="dwc:anyIdentificationTerm"/>
<xs:group name="IdentificationTerms">
<xs:sequence>
<xs:element ref="dwc:verbatimIdentification" minOccurs="0"/>
<xs:element ref="dwc:identificationQualifier" minOccurs="0"/>
<xs:element ref="dwc:typeStatus" minOccurs="0"/>
<xs:element ref="dwc:identifiedBy" minOccurs="0"/>
<xs:element ref="dwc:identifiedByID" minOccurs="0"/>
<xs:element ref="dwc:dateIdentified" minOccurs="0"/>
<xs:element ref="dwc:identificationReferences" minOccurs="0"/>
<xs:element ref="dwc:identificationVerificationStatus" minOccurs="0"/>
<xs:element ref="dwc:identificationRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- TAXON domain -->
<xs:element name="anyTaxonTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="taxonID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -390,10 +432,14 @@
<xs:element name="class" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="order" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="family" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="subfamily" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="genus" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="genericName" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="subgenus" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="infragenericEpithet" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="specificEpithet" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="infraspecificEpithet" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="cultivarEpithet" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="taxonRank" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="verbatimTaxonRank" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
<xs:element name="scientificNameAuthorship" type="xs:string" substitutionGroup="dwc:anyTaxonTerm"/>
@ -424,10 +470,14 @@
<xs:element ref="dwc:class" minOccurs="0"/>
<xs:element ref="dwc:order" minOccurs="0"/>
<xs:element ref="dwc:family" minOccurs="0"/>
<xs:element ref="dwc:subfamily" minOccurs="0"/>
<xs:element ref="dwc:genus" minOccurs="0"/>
<xs:element ref="dwc:genericName" minOccurs="0"/>
<xs:element ref="dwc:subgenus" minOccurs="0"/>
<xs:element ref="dwc:infragenericEpithet" minOccurs="0"/>
<xs:element ref="dwc:specificEpithet" minOccurs="0"/>
<xs:element ref="dwc:infraspecificEpithet" minOccurs="0"/>
<xs:element ref="dwc:cultivarEpithet" minOccurs="0"/>
<xs:element ref="dwc:taxonRank" minOccurs="0"/>
<xs:element ref="dwc:verbatimTaxonRank" minOccurs="0"/>
<xs:element ref="dwc:scientificNameAuthorship" minOccurs="0"/>
@ -438,6 +488,7 @@
<xs:element ref="dwc:taxonRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- MEASUREMENTORFACT domain -->
<xs:element name="anyMeasurementTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="measurementID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
@ -462,11 +513,13 @@
<xs:element ref="dwc:measurementRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- RESOURCERELATIONSHIP domain -->
<xs:element name="anyResourceRelationshipTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="resourceRelationshipID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
<!-- domain properties -->
<xs:element name="resourceID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyResourceRelationshipTerm"/>
<xs:element name="relationshipOfResourceID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyResourceRelationshipTerm"/>
<xs:element name="relatedResourceID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyResourceRelationshipTerm"/>
<xs:element name="relationshipOfResource" type="xs:string" substitutionGroup="dwc:anyResourceRelationshipTerm"/>
<xs:element name="relationshipAccordingTo" type="xs:string" substitutionGroup="dwc:anyResourceRelationshipTerm"/>
@ -475,6 +528,7 @@
<xs:group name="ResourceRelationshipTerms">
<xs:sequence>
<xs:element ref="dwc:resourceID" minOccurs="0"/>
<xs:element ref="dwc:relationshipOfResourceID" minOccurs="0"/>
<xs:element ref="dwc:relatedResourceID" minOccurs="0"/>
<xs:element ref="dwc:relationshipOfResource" minOccurs="0"/>
<xs:element ref="dwc:relationshipAccordingTo" minOccurs="0"/>
@ -482,4 +536,47 @@
<xs:element ref="dwc:relationshipRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
<!-- CHRONOMETRICAGE domain -->
<xs:element name="anyChronometricAgeTerm" abstract="true" substitutionGroup="dwc:anyProperty"/>
<xs:element name="chronometriAgeID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyIdentifier"/>
<!-- domain properties -->
<xs:element name="verbatimChronometricAge" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeProtocol" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="uncalibratedChronometricAge" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeConversionProtocol" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="earliestChronometricAge" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="earliestChronometricAgeReferenceSystem" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="latestChronometricAge" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="latestChronometricAgeReferenceSystem" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeUncertaintyInYears" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeUncertaintyMethod" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="materialDated" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="materialDatedID" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="materialDatedRelationship" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeDeterminedBy" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeDeterminedDate" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeReferences" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:element name="chronometricAgeRemarks" type="dwc:nonEmptyString" substitutionGroup="dwc:anyChronometricAgeTerm"/>
<xs:group name="ChronometricAgeTerms">
<xs:sequence>
<xs:element ref="chrono:verbatimChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeProtocol" minOccurs="0"/>
<xs:element ref="chrono:uncalibratedChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeConversionProtocol" minOccurs="0"/>
<xs:element ref="chrono:earliestChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:earliestChronometricAgeReferenceSystem" minOccurs="0"/>
<xs:element ref="chrono:latestChronometricAge" minOccurs="0"/>
<xs:element ref="chrono:latestChronometricAgeReferenceSystem" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeUncertaintyInYears" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeUncertaintyMethod" minOccurs="0"/>
<xs:element ref="chrono:materialDated" minOccurs="0"/>
<xs:element ref="chrono:materialDatedID" minOccurs="0"/>
<xs:element ref="chrono:materialDatedRelationship" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeDeterminedBy" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeDeterminedDate" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeReferences" minOccurs="0"/>
<xs:element ref="chrono:chronometricAgeRemarks" minOccurs="0"/>
</xs:sequence>
</xs:group>
</xs:schema>