Difference between revisions of "Date Documentation"

From Earth Science Information Partners (ESIP)
Line 52: Line 52:
 
<table border="1" cellpadding="6">
 
<table border="1" cellpadding="6">
 
<tr><th>Usage</th><th>Description and Xpath</th></tr>
 
<tr><th>Usage</th><th>Description and Xpath</th></tr>
<tr><td>Citation for resource being documented</td><td>/metadata/idinfo/citation/citeinfo</td></tr>
+
<tr><td>Date of publication for resource being documented</td><td>/metadata/idinfo/citation/citeinfo/pubdate</td></tr>
<tr><td>Citation for cross reference.</td><td>/metadata/idinfo/crossref/citeinfo</td></tr>
+
<tr><td>Range of dates during which the data was collected</td><td>/metadata/idinfo/timeperd/timeinfo/rngdates/begdate '''And''' /metadata/idinfo/timeperd/timeinfo/rngdates/enddate</td></tr>
<tr><td>Citation for source used in lineage.</td><td>/metadata/dataqual/lineage/srcinfo/srccite/citeinfo</td></tr>
+
<tr><td>Single date during which the data was collected</td><td>/metadata/dataqual/lineage/srcinfo/srctime/timeinfo/sngdate/enddate</td></tr>
 
</table>
 
</table>
  

Revision as of 16:53, September 20, 2015

I need to document different types of dates.

Overview

Documenting the when of data is often more complicated than the date the resource was created or modified. It is also important to know when the data collection took place and how long the project lasted. Dates are contained in different dialects on different ways.

Implementation

Content Standard for Digital Geospatial Metadata (CSDGM)

Structure

Publish Date <pre<noinclude></noinclude>><citation>

   <citeinfo>
       <origin>/metadata/idinfo/citation/citeinfo/origin</origin>
       <pubdate>/metadata/idinfo/citation/citeinfo/pubdate</pubdate>
       <pubtime>/metadata/idinfo/citation/citeinfo/pubtime</pubtime>
       <title>/metadata/idinfo/citation/citeinfo/title</title>
       <edition>/metadata/idinfo/citation/citeinfo/edition</edition>
       <geoform>/metadata/idinfo/citation/citeinfo/geoform</geoform>
       <serinfo>
           <sername>/metadata/idinfo/citation/citeinfo/serinfo/sername</sername>
           <issue>/metadata/idinfo/citation/citeinfo/serinfo/issue</issue>
       </serinfo>
       <pubinfo>
           <pubplace>/metadata/idinfo/citation/citeinfo/pubinfo/pubplace</pubplace>
           <publish>/metadata/idinfo/citation/citeinfo/pubinfo/publish</publish>
       </pubinfo>
       <othercit>/metadata/idinfo/citation/citeinfo/othercit</othercit>
       <onlink>/metadata/idinfo/citation/citeinfo/onlink</onlink>
       <lworkcit>
           <citeinfo/>
       </lworkcit>
   </citeinfo>

</citation>

Range of Dates <pre<noinclude></noinclude>> <timeinfo>

   <rngdates>
       <begdate>20000101</begdate>
       <enddate>20000202</enddate>
   </rngdates>

</timeinfo>

Single Date <pre<noinclude>> <timeinfo>

   <sngdate>
       <caldate>44440404</caldate>
   </sngdate>

</timeinfo>

Usage

UsageDescription and Xpath
Date of publication for resource being documented/metadata/idinfo/citation/citeinfo/pubdate
Range of dates during which the data was collected/metadata/idinfo/timeperd/timeinfo/rngdates/begdate And /metadata/idinfo/timeperd/timeinfo/rngdates/enddate
Single date during which the data was collected/metadata/dataqual/lineage/srcinfo/srctime/timeinfo/sngdate/enddate

Directory Interchange Format (DIF)

Structure

Creation / Revision Date <pre<noinclude></noinclude>><Data_Set_Citation>

   <Dataset_Creator>/DIF/Data_Set_Citation/Dataset_Creator</Dataset_Creator>
   <Dataset_Editor>/DIF/Data_Set_Citation/Dataset_Editor</Dataset_Editor>
   <Dataset_Title>/DIF/Data_Set_Citation/Dataset_Title</Dataset_Title>
   <Dataset_Series_Name>/DIF/Data_Set_Citation/Dataset_Series_Name</Dataset_Series_Name>
   <Dataset_Release_Date>/DIF/Data_Set_Citation/Dataset_Release_Date</Dataset_Release_Date>
   <Dataset_Release_Place>/DIF/Data_Set_Citation/Dataset_Release_Place</Dataset_Release_Place>
   <Dataset_Publisher>/DIF/Data_Set_Citation/Dataset_Publisher</Dataset_Publisher>
   <Version>/DIF/Data_Set_Citation/Version</Version>
   <Issue_Identification>/DIF/Data_Set_Citation/Issue_Identification</Issue_Identification>
   <Data_Presentation_Form>/DIF/Data_Set_Citation/Data_Presentation_Form</Data_Presentation_Form>
   <Other_Citation_Details>/DIF/Data_Set_Citation/Other_Citation_Details</Other_Citation_Details>
   <Dataset_DOI>/DIF/Data_Set_Citation/Dataset_DOI</Dataset_DOI>
   <Online_Resource>/DIF/Data_Set_Citation/Online_Resource</Online_Resource>

</Data_Set_Citation>

Dataset Range of Dates <pre<noinclude></noinclude>><Temporal_Coverage>

   <Start_Date>/DIF/Temporal_Coverage/Start_Date</Start_Date>
   <Stop_Date>/DIF/Temporal_Coverage/Stop_Date</Stop_Date>

</Temporal_Coverage>

Paleo Dates <pre<noinclude></noinclude>><Paleo_Temporal_Coverage>

   <Paleo_Start_Date>/DIF/Paleo_Temporal_Coverage/Paleo_Start_Date</Paleo_Start_Date>
   <Paleo_Stop_Date>/DIF/Paleo_Temporal_Coverage/Paleo_Stop_Date</Paleo_Stop_Date>
   <Chronostratigraphic_Unit uuid="uuid11">
       <Eon>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Eon</Eon>
       <Era>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Era</Era>
       <Period>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Period</Period>
       <Epoch>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Epoch</Epoch>
       <Stage>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Stage</Stage>
       <Detailed_Classification>/DIF/Paleo_Temporal_Coverage/Chronostratigraphic_Unit/Detailed_Classification</Detailed_Classification>
   </Chronostratigraphic_Unit>

</Paleo_Temporal_Coverage>

Usage

UsageDescription and Xpath
Citation for resource being documented/metadata/idinfo/citation/citeinfo
Citation for cross reference./metadata/idinfo/crossref/citeinfo
Citation for source used in lineage./metadata/dataqual/lineage/srcinfo/srccite/citeinfo

EOS Clearinghouse (ECHO)

Structure

Usage

International Organization for Standardization 19115 (ISO19115)

There are many dates included in the ISO Metadata Standards and they have several different types - each with its own characteristics. This page has information about valid formats for those dates.  Ron Lake's blog includes a helpful [description] of time in GML.

Structure

Usage

UsageDescription and Xpath
Citation for resource being documented/metadata/idinfo/citation/citeinfo
Citation for cross reference./metadata/idinfo/crossref/citeinfo
Citation for source used in lineage./metadata/dataqual/lineage/srcinfo/srccite/citeinfo

gco:Date Type


 Date: gives values for year, month and day. Character encoding of a date is a string which shall follow the format for date specified by [ISO 8601]. A full date is formatted as YYYYMMDD or YYYY-MM-DD. This type is used in the following fields:

  • MI_Metadata.dateStamp - The ISO definition of this field is "date that the metadata was created". Common usage seems to be evolving towards "date that the metadata was created or updated" because it seems reasonable that, once the metadata have been updated, the date of that update is more interesting than the original creation date. Also, the update actually creates the current metadata, so this usage seems consistent with the ISO definition.  Note: ISO 19115-1 replaces the datestamp/Date field with the dateinfo/CI_Date object, which enables the type of date to be specified.  ISO 19115-1 expands the date type codelist from 3 values to 16.
  • MD_MaintenanceInformation.dateOfNextUpdate
  • CI_Citation.editionDate - The ISO edition field is synonymous with the concept of version, so this is the release date for the version of the resource being cited.

gco:DateTime Type


 DateTime: combination of a date and a time type (given by an hour, minute and second). Character encoding of a DateTime shall follow [ISO 8601]. Combined dates and times should be formatted as YYYYMMDDThh:mm:ss, YYYYMMDDThhmmss, or YYYY-MM-DDThh:mm:ss. These representations include no TimeZone indicator, so they are assumed to be local time. YYYYMMDDThh:[mm:ssZ] would indicate universal time.

  • MD_Usage.usageDateTime
  • DQ_Element.dateTime
  • LI_ProcessStep.dateTime
  • MD_StandardOrderProcess.plannedAvailableDateTime
<gmd:dateTime>
  <gco:DateTime>2001-01-01T00:00:00</gco:DateTime>
</gmd:dateTime>

Note: This element was incorrectly defined in the ISO 19139 nschema as an [xs:dateTime]. That type does not allow all of the ISO 8601 options. Specifically, it does not allow the specification of a time range. It will likely be deprecated in the revision of the standard and replaced with stepDateTime.

gmd:CI_Date Type


This type is used only in the CI_Citation and is the only date type that includes a code from the CI_DateTypeCode codelist. Valid values from the CI_DateTypeCode CodeList are: creation (001), publication (002), and revision (003).  Note: ISO 19115-1 adds an additional 13 date type code list values to the code list.  In figure, see values highlighted in red.

 

<gmd:CI_Date>
  <gmd:date>
    <gco:Date>2000-01-01</gco:Date>
  </gmd:date>
  <gmd:dateType>
                <gmd:CI_DateTypeCode
                  codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
                  codeListValue="creation">creation</gmd:CI_DateTypeCode>
              </gmd:dateType>
</gmd:CI_Date>  

~~ATTACHED_IMAGE~~DateTypeCodes.PNG On-Going Datasets


 Many datasets are collected continuously through time. In these cases, a clear publication date does not exist. This situation can be indicated by a combination of "inapplicable" for the citation date, a status code = onGoing, and an endPosition with indeterminatePosition=now:

<gmd:date>
  <gmd:CI_Date>
    <gmd:date gco:nilReason="inapplicable"/>
    <gmd:dateType>
      <gmd:CI_DateTypeCode codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
        codeListValue="publication">publication</gmd:CI_DateTypeCode>
    </gmd:dateType>
  </gmd:CI_Date>
</gmd:date>
...
<gmd:status>
  <gmd:MD_ProgressCode codeListValue="onGoing" codeList="http://www.isotc211.org/2005/resources
    /codeList.xml#MD_ProgressCode">onGoing</gmd:MD_ProgressCode>
</gmd:status>
...
<gmd:temporalElement>
  <gmd:EX_TemporalExtent id="boundingTemporalExtent">
    <gmd:extent>
      <gml:TimePeriod gml:id="d1e50">
        <gml:beginPosition>2003-01-18T00:23:00.000Z</gml:beginPosition>
        <gml:endPosition indeterminatePosition="now"/>
      </gml:TimePeriod>
    </gmd:extent>
  </gmd:EX_TemporalExtent>
</gmd:temporalElement>

Relative Times


 In some situations it is necessary to express a time in terms of a fixed period before the present. For example, on-going data processing systems might use observation sets and products from the previous day in the creation of a product for today. In these cases the duration and the end of the time period are known, so the XML looks like:

<gmd:temporalElement>
  <gmd:EX_TemporalExtent>
    <gmd:extent>
      <gml:TimePeriod gml:id="id">
        <b><gml:duration>P1D</gml:duration></b>
        <gml:endPosition indeterminatePosition="now"/>
      </gml:TimePeriod>
    </gmd:extent>
  </gmd:EX_TemporalExtent>
</gmd:temporalElement>

See [ISO 8601] for information on durations.

Uncertain Times


 The GML elements for describing time positions (beginPosition and endPosition) include the indeterminatePosition attribute that can have values of before, after, now, and unknown. This attribute can be used with a time value to express uncertain times. For example, a dataset that began sometime before 1980 and continues to the present could be described as:

<gmd:extent>
   <gml:TimePeriod gml:id="id">
      <gml:beginPosition indeterminatePosition="before">1980</gml:beginPosition>
      <gml:endPosition indeterminatePosition="now"/>
   </gml:TimePeriod>
</gmd:extent>

Crosswalks

Notes

gco:Date Type


 Date: gives values for year, month and day. Character encoding of a date is a string which shall follow the format for date specified by [ISO 8601]. A full date is formatted as YYYYMMDD or YYYY-MM-DD. This type is used in the following fields:

  • MI_Metadata.dateStamp - The ISO definition of this field is "date that the metadata was created". Common usage seems to be evolving towards "date that the metadata was created or updated" because it seems reasonable that, once the metadata have been updated, the date of that update is more interesting than the original creation date. Also, the update actually creates the current metadata, so this usage seems consistent with the ISO definition.  Note: ISO 19115-1 replaces the datestamp/Date field with the dateinfo/CI_Date object, which enables the type of date to be specified.  ISO 19115-1 expands the date type codelist from 3 values to 16.
  • MD_MaintenanceInformation.dateOfNextUpdate
  • CI_Citation.editionDate - The ISO edition field is synonymous with the concept of version, so this is the release date for the version of the resource being cited.

gco:DateTime Type


 DateTime: combination of a date and a time type (given by an hour, minute and second). Character encoding of a DateTime shall follow [ISO 8601]. Combined dates and times should be formatted as YYYYMMDDThh:mm:ss, YYYYMMDDThhmmss, or YYYY-MM-DDThh:mm:ss. These representations include no TimeZone indicator, so they are assumed to be local time. YYYYMMDDThh:[mm:ssZ] would indicate universal time.

  • MD_Usage.usageDateTime
  • DQ_Element.dateTime
  • LI_ProcessStep.dateTime
  • MD_StandardOrderProcess.plannedAvailableDateTime
<gmd:dateTime>
  <gco:DateTime>2001-01-01T00:00:00</gco:DateTime>
</gmd:dateTime>

Note: This element was incorrectly defined in the ISO 19139 nschema as an [xs:dateTime]. That type does not allow all of the ISO 8601 options. Specifically, it does not allow the specification of a time range. It will likely be deprecated in the revision of the standard and replaced with stepDateTime.

gmd:CI_Date Type


This type is used only in the CI_Citation and is the only date type that includes a code from the CI_DateTypeCode codelist. Valid values from the CI_DateTypeCode CodeList are: creation (001), publication (002), and revision (003).  Note: ISO 19115-1 adds an additional 13 date type code list values to the code list.  In figure, see values highlighted in red.

 

<gmd:CI_Date>
  <gmd:date>
    <gco:Date>2000-01-01</gco:Date>
  </gmd:date>
  <gmd:dateType>
                <gmd:CI_DateTypeCode
                  codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
                  codeListValue="creation">creation</gmd:CI_DateTypeCode>
              </gmd:dateType>
</gmd:CI_Date>  

~~ATTACHED_IMAGE~~DateTypeCodes.PNG On-Going Datasets


 Many datasets are collected continuously through time. In these cases, a clear publication date does not exist. This situation can be indicated by a combination of "inapplicable" for the citation date, a status code = onGoing, and an endPosition with indeterminatePosition=now:

<gmd:date>
  <gmd:CI_Date>
    <gmd:date gco:nilReason="inapplicable"/>
    <gmd:dateType>
      <gmd:CI_DateTypeCode codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
        codeListValue="publication">publication</gmd:CI_DateTypeCode>
    </gmd:dateType>
  </gmd:CI_Date>
</gmd:date>
...
<gmd:status>
  <gmd:MD_ProgressCode codeListValue="onGoing" codeList="http://www.isotc211.org/2005/resources
    /codeList.xml#MD_ProgressCode">onGoing</gmd:MD_ProgressCode>
</gmd:status>
...
<gmd:temporalElement>
  <gmd:EX_TemporalExtent id="boundingTemporalExtent">
    <gmd:extent>
      <gml:TimePeriod gml:id="d1e50">
        <gml:beginPosition>2003-01-18T00:23:00.000Z</gml:beginPosition>
        <gml:endPosition indeterminatePosition="now"/>
      </gml:TimePeriod>
    </gmd:extent>
  </gmd:EX_TemporalExtent>
</gmd:temporalElement>

Relative Times


 In some situations it is necessary to express a time in terms of a fixed period before the present. For example, on-going data processing systems might use observation sets and products from the previous day in the creation of a product for today. In these cases the duration and the end of the time period are known, so the XML looks like:

<gmd:temporalElement>
  <gmd:EX_TemporalExtent>
    <gmd:extent>
      <gml:TimePeriod gml:id="id">
        <b><gml:duration>P1D</gml:duration></b>
        <gml:endPosition indeterminatePosition="now"/>
      </gml:TimePeriod>
    </gmd:extent>
  </gmd:EX_TemporalExtent>
</gmd:temporalElement>

See [ISO 8601] for information on durations.

Uncertain Times


 The GML elements for describing time positions (beginPosition and endPosition) include the indeterminatePosition attribute that can have values of before, after, now, and unknown. This attribute can be used with a time value to express uncertain times. For example, a dataset that began sometime before 1980 and continues to the present could be described as:

<gmd:extent>
   <gml:TimePeriod gml:id="id">
      <gml:beginPosition indeterminatePosition="before">1980</gml:beginPosition>
      <gml:endPosition indeterminatePosition="now"/>
   </gml:TimePeriod>
</gmd:extent>