libSBML C API
libSBML 5.8.0 C API
|
Representation of MIRIAM-compliant dates used in ModelHistory.
This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. This class is not prescribed by the SBML specifications, although it is used to implement features defined in SBML.
A Date object stores a reasonably complete representation of date and time. Its purpose is to serve as a way to store dates to be read and written in the W3C date format used in RDF Dublin Core annotations within SBML. The W3C date format is a restricted form of ISO 8601, the international standard for the representation of dates and times. A time and date value in this W3C format takes the form YYYY-MM-DDThh:mm:ssXHH:ZZ (e.g., 1997-07-16T19:20:30+01:00
) where XHH:ZZ is the time zone offset. The libSBML Date object contains the following fields to represent these values:
year: an unsigned int representing the year. This should be a four-digit number such as 2011
.
month: an unsigned int representing the month, with a range of values of 1–12. The value 1
represents January, and so on.
day: an unsigned int representing the day of the month, with a range of values of 1–31.
hour: an unsigned int representing the hour on a 24-hour clock, with a range of values of 0–23.
minute: an unsigned int representing the minute, with a range of 0–59.
second: an unsigned int representing the second, with a range of 0–59.
sign: an unsigned int representing the sign of the offset (0
signifying +
and 1
signifying -
). See the paragraph below for further explanations.
hours offset: an unsigned int representing the time zone's hour offset from GMT.
minute offset: an unsigned int representing the time zone's minute offset from GMT.
To illustrate the time zone offset, a value of -05:00
would correspond to USA Eastern Standard Time. In the Date object, this would require a value of 1
for the sign field, 5
for the hour offset and 0
for the minutes offset.
In the restricted RDF annotations used in SBML, described in Section 6 of the SBML Level 2 and Level 3 specification documents, date/time stamps can be used to indicate the time of creation and modification of a model. The following SBML model fragment illustrates this:
<model metaid="_180340" id="GMO" name="Goldbeter1991_MinMitOscil"> <annotation> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#" > <rdf:Description rdf:about="#_180340"> <dc:creator> <rdf:Bag> <rdf:li rdf:parseType="Resource"> <vCard:N rdf:parseType="Resource"> <vCard:Family>Shapiro</vCard:Family> <vCard:Given>Bruce</vCard:Given> </vCard:N> <vCard:EMAIL>bshapiro@jpl.nasa.gov</vCard:EMAIL> <vCard:ORG rdf:parseType="Resource"> <vCard:Orgname>NASA Jet Propulsion Laboratory</vCard:Orgname> </vCard:ORG> </rdf:li> </rdf:Bag> </dc:creator> <dcterms:created rdf:parseType="Resource"> <dcterms:W3CDTF>2005-02-06T23:39:40+00:00</dcterms:W3CDTF> </dcterms:created> <dcterms:modified rdf:parseType="Resource"> <dcterms:W3CDTF>2005-09-13T13:24:56+00:00</dcterms:W3CDTF> </dcterms:modified> </rdf:Description> </rdf:RDF> </annotation> </model>