Skip to content

Commit

Permalink
Add XML schemas for reference
Browse files Browse the repository at this point in the history
  • Loading branch information
Jess Robertson committed Feb 12, 2020
1 parent 9d539ec commit 5b0f192
Show file tree
Hide file tree
Showing 43 changed files with 1,310 additions and 0 deletions.
1 change: 1 addition & 0 deletions schema.igsn.org/xml/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.bak
2 changes: 2 additions & 0 deletions schema.igsn.org/xml/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# IGSN metadata #
Metadata in IGSN are handled in two separate streams, one for the registration of identifiers and one for the description of samples. This repository is for the development of the respective IGSN description and registration metadata schemas.
2 changes: 2 additions & 0 deletions schema.igsn.org/xml/description/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# IGSN metadata #
Metadata in IGSN are handled in two separate streams, one for the registration of identifiers and one for the description of samples. This repository is for the development of the IGSN description metadata schema.
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
IGSN Description Metadata is intended to describe the core elements of a specimen. The set of attributes is seen as the "birth certificate" of a specimens and should not contain stateful attributes, where possible. The base document for the development are the notes from the [IGSN Metadata Kernel Workshop](http://igsn.github.io/2015/09/15/IGSN-Metadata-Kernel-Working-Meeting/) held in Los Angeles in September 2015.

# IGSN Descriptive Metadata Elements #


ID | Element | A/C | Occ | Definition | Description and instructions
----- | -------------- | ------------ | ------ | ----------- | ----------------------------
 | resource | Root element | | | IGSN "birth certificate" for a physical sample, associated feature, or collection
1 | identifier | C | 1 | string | The Identifier is a unique string that identifies a resource. IGSN (International GeoSample Number) registered by an IGSN member. Format should be: "10273/foo"
1.1 | identifierType | A | 1 |include/identifierType.xsd | currently only type=IGSN is supported |
2 | name | | 1...1, not nillable| string | Text string for people to understand what is identified. What would typically be presented in a user interface. Collector's or contributor's local/field name used to name the specimen; not globally unique but typically unique within a set of specimens. |
3 | alternateIdentifiers | | 0...1 | | Other formal identifiers for this resource, in addition to the IGSN. |
3.1 | alternateIdentifier | C | 0...n | string | |
3.1.1 | identifierType | A | 0...1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
4 | relatedIdentifiers | | 0...1 | | Formal identifiers of resources related to this resource, including the scheme and relationType for each. Link to parent sample, paper, other resource; here we link to a field expedition, journal article, etc. |
4.1 | relatedIdentifier| C | 0...n | string | |
4.1.1 | identifierType | A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
4.1.2 | relationType | A | 1 | include/relationType.xsd | Controlled list of relation types in include/relationType.xsd |
5 | description | | 0...1 | string | Descriptive text about the sample. Free text, anything else that might be useful to know about the sample at its 'birth' |
6 | registrant | | 1 | string | registrant (cf. datacite:publisher) - agent (person or organization) that registered the IGSN for this resource |
6.1 | identifier | C | 0...1 | | Identification of the registrant |
6.1.1 | identifierType | A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
6.2 | name | C | 0...1 | | Name of the registrant. |
6.3 | affiliation | C | 0...1 | | Information about the affiliation of the registrant. |
6.3.1 | identifier | C | 0...1 | | Identification of the institutional affiliation of the registrant. |
6.3.1.1 | identifierType| A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
6.3.2 | name | C | 0...1 | string | Name of the institution to which the registrant is affiliated |
7 | collector | | 0...1 | | Collector of the resource. Who collected the sample. Must be nillable. Ideally want an URI for agent; also need name string. Role: Person who gets credit for picking location, getting funding, selecting and extracting the actual object. (1..N, nilable). ODP chief scientist, field geologist. Synthetic sample--experimentalist is collector.
7.1 | identifier | C | 0...1 | | Identification of the sample collector. |
7.1.1 | identifierType | A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
7.2 | name | C | 1 | string | Name of the sample collector. |
7.3 | affiliation | C | 0...1 | string | Name of the institution to which the collector is affiliated |
7.3.1 | identifier | C | 0...1 | string | Identification of the institutional affiliation of the collector. |
7.3.1.1 | identifierType| A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
7.3.2 | name | C | 1 | string | Name of the institution to which the collector is affiliated |
8 | contributors | | 0...1 | | Agents (persons or organizations) that contributed to this resource; investigator, funder, technician, etc. |
8.1 |contributor | C | 1...n | | |
8.1.1 | contributorType | A | 1 | include/contributorType.xsd | Controlled list of identifiers in include/contributorType.xsd |
8.1.1 | identifier | C | 0...1 | string | Identification of the contributor |
8.1.1.1 | identifierType| A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
8.1.1.2 | name | C | 0...1 | string | Name of the contributor |
9 | geoLocations | | 0...1 | | geoLocations (geometry cf. odm2:samplingfeaturegeotype|toponym) - location of the resource, expressed as 2-D geometry and/or place name(s)|
9.1 | geoLocation | C | 1...1 | | Where was the sample acquired relative to the Earth (or another celestial body...). Some samples might be 'non-geographic': mineral specimen, synthetic material.
9.1.1 | geometry | | 1 | | Geospatial geometry element. |
9.1.1.1 | geometryType| A | 1 | include/geometryType.xsd | Controlled list of identifiers in include/geometryType.xsd |
9.1.1.2 | sridType | A | 0...1 | include/sridType.xsd | Controlled list of identifiers in include/sridType.xsd |
9.1.2 | toponym | | 1 | string | Named location
9.1.2.1 | identifier | C | 0...1 | string | Identification of the geographical location. |
9.1.2.1.1 | identifierType | A | 1 | include/identifierType.xsd | Controlled list of identifiers in include/identifierType.xsd |
9.1.2.2 | name | C | 0...1 | string | Name of the location. |
10 | resourceTypes | | 0...1 | | Describe the basic form of the object that is registered. e.g. polished section; core; pulp; solution, dredge haul in a box, lot, piece of material. Different profiles might have different vocabularies. (1..N, not nillable). Implementation should be a 'scoped' name (vocabulary URI, concept/term URI, label for display). |
10.1 | resourceType | C | 1 | include/resourceType.xsd | Controlled list of identifiers from include/resourceType.xsd |
10.2 | alternateResourceTypes | C | 0...1 | | |
10.2.1 | alternateResourceType| C | 0...n | string or URI | |
11 | materials | | 0...1 | | Categorize the material that composes to the sample, e.g. water, granite, tissue. Idea is to create a high-level cross-domain vocabulary. (1..N, nillable). 'lot' type samples (dredge haul, drill core) may have multiple materials included. Material may be categorized under different schemes. Implementation should be a 'scoped' name (vocabulary URI, concept/term URI, label for display).
11.1 | material | C | 1...n | include/materialType.xsd | Controlled list of identifiers from include/materialType.xsd |
11.2 | alternateMaterials | C | 0...1 | | Alternate description of the material in addition to controlled vocabulary |
11.2.1 | alternateMaterial | C | 1...n | string or URI | |
12 | collectionMethods | | 0...1 | | term to categorize the process through which the sample was acquired as an independent object.
12.1 | collectionMethod | C | 1 | include/methodType | 1...1, nillable, broad classification of instrument/technique used to create or extract this resource - must provide 1 term from SESAR (collectionMethod) vocabulary plus 0-N additional terms from any vocabulary; typically only used for samples |
12.2 | alternatecollectionMethods | C | 0...1 | | Alternate description of the collection method in addition to controlled vocabulary |
12.2.1 | alternatecollectionMethod | C | 0...1 | string or URI | |
13 | collectionTime | | 1...1 | Datetime | Time when the sample was collected. 1...1, nillable[reason]. May be instant or interval. Has to determine encoding scheme for interchange, e.g. (ISO 19156). Example encodings: YYYY, YYYY-MM, YYYY-MM-DD, YYYY-MM-DDZhh:mm
14 | sampleAccess | | 1...1 | accessible, restricted, private | Indicates whether this resource is available for reuse beyond the original contributor. Typically only used for samples, not sampling features. |
15 | supplementalMetadata | | 0...1 | | Location (URI) of a supplemental metadata records. These records may be more detailed or in other formats and are provided by the repository. This element was introduced to the high-level descriptive metadata kernel to point to richer and more detailed descriptions without bloating the kernel with many optional elements that mostly go unused.
15.1 | record | C | 1...n | URI | Any URI pointing to supplemental metadata of the resource |

A = Attribute, C = Child
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions schema.igsn.org/xml/description/include/accessType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="accessType" id="accessType">
<xs:restriction base="xs:string">
<xs:enumeration value="Public"/>
<xs:enumeration value="Private"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
11 changes: 11 additions & 0 deletions schema.igsn.org/xml/description/include/collectionType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schema.igsn.org/description/1.1"
targetNamespace="http://schema.igsn.org/description/1.1"
elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="collectionType" id="collectionType">
<xs:restriction base="xs:string">
<xs:enumeration value="Collection"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
23 changes: 23 additions & 0 deletions schema.igsn.org/xml/description/include/contributorType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="contributorType" id="contributorType">
<xs:restriction base="xs:string">
<xs:enumeration value="ContactPerson"/>
<xs:enumeration value="Distributor"/>
<xs:enumeration value="Editor"/>
<xs:enumeration value="Funder"/>
<xs:enumeration value="HostingInstitution"/>
<xs:enumeration value="Other"/>
<xs:enumeration value="ProjectLeader"/>
<xs:enumeration value="ProjectManager"/>
<xs:enumeration value="ProjectMember"/>
<xs:enumeration value="RelatedPerson"/>
<xs:enumeration value="ResearchGroup"/>
<xs:enumeration value="RightsHolder"/>
<xs:enumeration value="Researcher"/>
<xs:enumeration value="Sponsor"/>
<xs:enumeration value="Supervisor"/>
<xs:enumeration value="WorkPackageLeader"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
32 changes: 32 additions & 0 deletions schema.igsn.org/xml/description/include/featureType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schema.igsn.org/description/1.1"
targetNamespace="http://schema.igsn.org/description/1.1"
elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="featureType" id="featureType">
<xs:restriction base="xs:string">
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/borehole"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/crossSection"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/CTD"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/depthInterval"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/excavation"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/fieldArea"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/flightline"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/interval"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/observationWell"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/profile"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/quadrat"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/scene"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/shipsTrack"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/site"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/soilPitSection"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/specimen"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/streamGage"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/trajectory"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/transect"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/traverse"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/waterQualityStation"/>
<xs:enumeration value="http://vocabulary.odm2.org/samplingfeaturetype/weatherStation"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
13 changes: 13 additions & 0 deletions schema.igsn.org/xml/description/include/geometryType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="geometryType" id="geometryType"> <!-- SFS -->
<xs:restriction base="xs:string">
<xs:enumeration value="LineString"/>
<xs:enumeration value="MultiLineString"/>
<xs:enumeration value="Point"/>
<xs:enumeration value="MultiPoint"/>
<xs:enumeration value="Polygon"/>
<xs:enumeration value="MultiPolygon"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
20 changes: 20 additions & 0 deletions schema.igsn.org/xml/description/include/identifierType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="identifierType" id="identifierType">
<xs:restriction base="xs:string">
<xs:enumeration value="ARK"/>
<xs:enumeration value="DOI"/>
<xs:enumeration value="Handle"/>
<xs:enumeration value="IGSN"/>
<xs:enumeration value="ISBN"/>
<xs:enumeration value="ISNI"/>
<xs:enumeration value="ISSN"/>
<xs:enumeration value="LSID"/>
<xs:enumeration value="ORCID"/>
<xs:enumeration value="PURL"/>
<xs:enumeration value="URL"/>
<xs:enumeration value="URN"/>
<xs:enumeration value="VIAF"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
22 changes: 22 additions & 0 deletions schema.igsn.org/xml/description/include/materialType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" version="1.0" xml:lang="EN">
<xs:simpleType name="materialType" id="materialType">
<xs:restriction base="xs:string">
<xs:enumeration value="http://vocabulary.odm2.org/medium/air"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/gas"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/ice"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/liquidAqueous"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/liquidOrganic"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/mineral"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/organism"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/particulate"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/rock"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/sediment"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/snow"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/soil"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/tissue"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/other"/>
<xs:enumeration value="http://vocabulary.odm2.org/medium/unknown"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
38 changes: 38 additions & 0 deletions schema.igsn.org/xml/description/include/methodType.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.igsn.org/description/1.1" targetNamespace="http://schema.igsn.org/description/1.1" elementFormDefault="qualified" xml:lang="EN" version="1.0">
<xs:simpleType name="methodType" id="MethodType">
<xs:restriction base="xs:string">
<xs:enumeration value="Blast"/>
<xs:enumeration value="Corer"/>
<xs:enumeration value="Corer:Box"/>
<xs:enumeration value="Corer:Drill"/>
<xs:enumeration value="Corer:FreeFall"/>
<xs:enumeration value="Corer:Gravity"/>
<xs:enumeration value="Corer:Gravity,Giant"/>
<xs:enumeration value="Corer:Kastenlot"/>
<xs:enumeration value="Corer:Multi"/>
<xs:enumeration value="Corer:Piston"/>
<xs:enumeration value="Corer:Piston,Giant"/>
<xs:enumeration value="Corer:Rock"/>
<xs:enumeration value="Corer:SideSaddle"/>
<xs:enumeration value="Corer:TriggerWeight"/>
<xs:enumeration value="Corer:Vibrating"/>
<xs:enumeration value="Dredge"/>
<xs:enumeration value="Dredge:ChainBag"/>
<xs:enumeration value="Dredge:Scallop"/>
<xs:enumeration value="Grab"/>
<xs:enumeration value="Hand"/>
<xs:enumeration value="Hand:Auger"/>
<xs:enumeration value="Hand:Hammer"/>
<xs:enumeration value="Hand:Knife"/>
<xs:enumeration value="Net"/>
<xs:enumeration value="Net:MOCNESS"/>
<xs:enumeration value="Probe"/>
<xs:enumeration value="Scoop"/>
<xs:enumeration value="Trap"/>
<xs:enumeration value="Trawl"/>
<xs:enumeration value="Other"/>
<xs:enumeration value="Unknown"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Loading

1 comment on commit 5b0f192

@jesserobertson
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Task in #1

Please sign in to comment.