libSBML Python API  5.18.0
libsbml.Date Class Reference
Inheritance diagram for libsbml.Date:
[legend]

Detailed Description

A MIRIAM-compliant date representation.

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: a long integer representing the year. This should be a four-digit number such as 2011.
  • month: a long integer representing the month, with a range of values of 1–12. The value 1 represents January, and so on.
  • day: a long integer representing the day of the month, with a range of values of 1–31.
  • hour: a long integer representing the hour on a 24-hour clock, with a range of values of 0–23.
  • minute: a long integer representing the minute, with a range of 0–59.
  • second: a long integer representing the second, with a range of 0–59.
  • sign: a long integer representing the sign of the offset (0 signifying + and 1 signifying -). See the paragraph below for further explanations.
  • hours offset: a long integer representing the time zone's hour offset from GMT, with a range of 0–12.
  • minute offset: a long integer representing the time zone's minute offset from GMT, with a range of 0–59.

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>

Public Member Functions

def __init__ (self, args)
 This method has multiple variants; they differ in the arguments they accept. More...
 
def clone (self)
 Creates and returns a deep copy of this Date object. More...
 
def getDateAsString (self)
 Returns the current Date value in text-string form. More...
 
def getDay (self)
 Returns the day from this Date. More...
 
def getHour (self)
 Returns the hour from this Date. More...
 
def getHoursOffset (self)
 Returns the hours of the time zone offset from this Date. More...
 
def getMinute (self)
 Returns the minute from this Date. More...
 
def getMinutesOffset (self)
 Returns the minutes of the time zone offset from this Date. More...
 
def getMonth (self)
 Returns the month from this Date. More...
 
def getSecond (self)
 Returns the seconds from this Date. More...
 
def getSignOffset (self)
 Returns the sign of the time zone offset from this Date. More...
 
def getYear (self)
 Returns the year from this Date. More...
 
def representsValidDate (self)
 Returns True or False depending on whether this date object represents a valid date and time value. More...
 
def setDateAsString (self, date)
 Sets the value of this Date object using a date and time value expressed as a text string. More...
 
def setDay (self, day)
 Sets the value of the day of this Date object. More...
 
def setHour (self, hour)
 Sets the value of the hour of this Date object. More...
 
def setHoursOffset (self, hoursOffset)
 Sets the value of this Date object's time zone hour offset. More...
 
def setMinute (self, minute)
 Sets the value of the minute of this Date object. More...
 
def setMinutesOffset (self, minutesOffset)
 Sets the value of this Date object's time zone minutes offset. More...
 
def setMonth (self, month)
 Sets the value of the month of this Date object. More...
 
def setSecond (self, second)
 Sets the value of the second of the Date object. More...
 
def setSignOffset (self, sign)
 Sets the value of the sign of the time zone offset of this Date object. More...
 
def setYear (self, year)
 Sets the value of the year of this Date object. More...
 

Constructor & Destructor Documentation

def libsbml.Date.__init__ (   self,
  args 
)

This method has multiple variants; they differ in the arguments they accept.

__init__(long  year=2000, long  month=1, long  day=1, long  hour=0, long  minute=0, long  second=0, long  sign=0, long  hoursOffset=0, long  minutesOffset=0)   Date
__init__(long  year=2000, long  month=1, long  day=1, long  hour=0, long  minute=0, long  second=0, long  sign=0, long  hoursOffset=0)   Date
__init__(long  year=2000, long  month=1, long  day=1, long  hour=0, long  minute=0, long  second=0, long  sign=0)   Date
__init__(long  year=2000, long  month=1, long  day=1, long  hour=0, long  minute=0, long  second=0)   Date
__init__(long  year=2000, long  month=1, long  day=1, long  hour=0, long  minute=0)   Date
__init__(long  year=2000, long  month=1, long  day=1, long  hour=0)   Date
__init__(long  year=2000, long  month=1, long  day=1)   Date
__init__(long  year=2000, long  month=1)   Date
__init__(long  year=2000)   Date
__init__()   Date
__init__(string date)   Date
__init__(Date orig)   Date

Each variant is described separately below.


Method variant with the following signature:
Date(string date)

Creates a Date object from a string expressing a date and time value.

This constructor expects its argument to be in the W3C date format with time zone offset, used in RDF Dublin Core annotations within SBML.

The date format expresses a date and time value as a string of the form YYYY-MM-DDThh:mm:ssXHH:ZZ, where
  • YYYY is a four-digit integer representing the year. This should be a four-digit number such as 2011.
  • MM is a two-digit integer representing the month, with a range of values of 01–12. The value 1 represents January, and so on.
  • DD is a two-digit integer representing the day of the month, with a range of values of 01–31.
  • T is the literal character T.
  • hh is a two-digit integer representing the hour on a 24-hour clock, with a range of values of 00–23.
  • mm is a two-digit integer representing the minute, with a range of 00–59.
  • ss is a two-digit integer representing the second, with a range of 0–59.
  • X is the the sign of the time zone offset, either + or -.
  • HH is a two-digit integer representing the hour of the time zone offset, with a range of 00–23.
  • ZZ is a two-digit integer representing the minutes of the time zone offset, with a range of 00–59.

In the string format above, it is important not to forget the literal character T in the string. Here is an example date/time string: 1997-07-16T19:20:30+01:00, which would represent July 16, 1997, at 19:20:30 in Central European Time (which is UTC +1:00).

If this constructor is given a None argument or a string of length zero, it constructs a Date object with the value of January 1, 2000, at time 00:00 UTC. Otherwise, the argument must be in the complete format described above, or unpredictable results will happen.

Parameters
datea string representing the date.

Method variant with the following signature:
Date(long year = 2000, long month = 1, long day = 1, long hour = 0, long minute = 0, long second = 0, long sign = 0, long hoursOffset = 0, long minutesOffset = 0)

Creates a time and date representation for use in model annotations and elsewhere.

The following is the complete set of possible arguments to this constructor, with default values as indicated:

Parameters
yeara long integereger representing the year. This should be a four-digit number such as 2011. (Default value used if this argument is not given: 2000.)
montha long integereger representing the month, with a range of values of 1–12. The value 1 represents January, and so on. (Default value used if this argument is not given: 1.)
daya long integereger representing the day of the month, with a range of values of 1–31. (Default value used if this argument is not given: 1.)
houra long integereger representing the hour on a 24-hour clock, with a range of values of 0–23. (Default value used if this argument is not given: 0.)
minutea long integereger representing the minute, with a range of 0–59. (Default value used if this argument is not given: 0.)
seconda long integereger representing the second, with a range of 0–59. (Default value used if this argument is not given: 0.)
signa long integereger representing the sign of the offset (0 signifying + and 1 signifying -). See the paragraph below for further explanations. (Default value used if this argument is not given: 0.)
hoursOffseta long integereger representing the time zone's hour offset from GMT. (Default value used if this argument is not given: 0.)
minutesOffseta long integereger representing the time zone's minute offset from GMT. (Default value used if this argument is not given: 0.)

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.

Note
Owing to the way that language interfaces are created in libSBML, this documentation may show methods that define default values for parameters with text that has the form parameter = value. This is not to be intepreted as a Python keyword argument; the use of a parameter name followed by an equals sign followed by a value is only meant to indicate a default value if the argument is not provided at all. It is not a keyword in the Python sense.

Method variant with the following signature:
Date(Date orig)

Copy constructor; creates a copy of this Date.

Parameters
origthe object to copy.

Member Function Documentation

def libsbml.Date.clone (   self)

Creates and returns a deep copy of this Date object.

clone()   Date
Returns
the (deep) copy of this Date object.
def libsbml.Date.getDateAsString (   self)

Returns the current Date value in text-string form.

getDateAsString()   string

The string returned will be in the W3C date format with time zone offset, used in RDF Dublin Core annotations within SBML.

The date format expresses a date and time value as a string of the form YYYY-MM-DDThh:mm:ssXHH:ZZ, where
  • YYYY is a four-digit integer representing the year. This should be a four-digit number such as 2011.
  • MM is a two-digit integer representing the month, with a range of values of 01–12. The value 1 represents January, and so on.
  • DD is a two-digit integer representing the day of the month, with a range of values of 01–31.
  • T is the literal character T.
  • hh is a two-digit integer representing the hour on a 24-hour clock, with a range of values of 00–23.
  • mm is a two-digit integer representing the minute, with a range of 00–59.
  • ss is a two-digit integer representing the second, with a range of 0–59.
  • X is the the sign of the time zone offset, either + or -.
  • HH is a two-digit integer representing the hour of the time zone offset, with a range of 00–23.
  • ZZ is a two-digit integer representing the minutes of the time zone offset, with a range of 00–59.

In the string format above, it is important not to forget the literal character T in the string. Here is an example date/time string: 1997-07-16T19:20:30+01:00, which would represent July 16, 1997, at 19:20:30 in Central European Time (which is UTC +1:00).

Returns
the date as a string.
def libsbml.Date.getDay (   self)

Returns the day from this Date.

getDay()   long
Returns
the day from this Date.
def libsbml.Date.getHour (   self)

Returns the hour from this Date.

getHour()   long
Returns
the hour from this Date.
def libsbml.Date.getHoursOffset (   self)

Returns the hours of the time zone offset from this Date.

getHoursOffset()   long
Returns
the hours of the offset from this Date.
def libsbml.Date.getMinute (   self)

Returns the minute from this Date.

getMinute()   long
Returns
the minute from this Date.
def libsbml.Date.getMinutesOffset (   self)

Returns the minutes of the time zone offset from this Date.

getMinutesOffset()   long
Returns
the minutes of the offset from this Date.
def libsbml.Date.getMonth (   self)

Returns the month from this Date.

getMonth()   long
Returns
the month from this Date.
def libsbml.Date.getSecond (   self)

Returns the seconds from this Date.

getSecond()   long
Returns
the seconds from this Date.
def libsbml.Date.getSignOffset (   self)

Returns the sign of the time zone offset from this Date.

getSignOffset()   long
Returns
the sign of the offset from this Date.
def libsbml.Date.getYear (   self)

Returns the year from this Date.

getYear()   long
Returns
the year from this Date.
def libsbml.Date.representsValidDate (   self)

Returns True or False depending on whether this date object represents a valid date and time value.

representsValidDate()   bool

This method verifies that the date/time value stored in this object is well-formed and represents plausible values. A time and date value in the 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. This method checks such things as whether the value of the month number is less than or equal to 12, whether the value of the minutes number is less than or equal to 59, whether a time zone offset is set, etc.

Returns
True if the date is valid, False otherwise.
def libsbml.Date.setDateAsString (   self,
  date 
)

Sets the value of this Date object using a date and time value expressed as a text string.

setDateAsString(string date)   int

This method expects its argument to be in the W3C date format with time zone offset, used in RDF Dublin Core annotations within SBML.

The date format expresses a date and time value as a string of the form YYYY-MM-DDThh:mm:ssXHH:ZZ, where
  • YYYY is a four-digit integer representing the year. This should be a four-digit number such as 2011.
  • MM is a two-digit integer representing the month, with a range of values of 01–12. The value 1 represents January, and so on.
  • DD is a two-digit integer representing the day of the month, with a range of values of 01–31.
  • T is the literal character T.
  • hh is a two-digit integer representing the hour on a 24-hour clock, with a range of values of 00–23.
  • mm is a two-digit integer representing the minute, with a range of 00–59.
  • ss is a two-digit integer representing the second, with a range of 0–59.
  • X is the the sign of the time zone offset, either + or -.
  • HH is a two-digit integer representing the hour of the time zone offset, with a range of 00–23.
  • ZZ is a two-digit integer representing the minutes of the time zone offset, with a range of 00–59.

In the string format above, it is important not to forget the literal character T in the string. Here is an example date/time string: 1997-07-16T19:20:30+01:00, which would represent July 16, 1997, at 19:20:30 in Central European Time (which is UTC +1:00).

If this method is given a None argument or a string of length zero, it constructs a Date object with the value of January 1, 2000, at time 00:00 UTC. Otherwise, the argument must be in the complete format described above, or unpredictable results will happen.

Parameters
datea string representing the date.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setDay (   self,
  day 
)

Sets the value of the day of this Date object.

setDay(long  day)   int
Parameters
daya long integer representing the day; it must be in the range 0–31 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setHour (   self,
  hour 
)

Sets the value of the hour of this Date object.

setHour(long  hour)   int
Parameters
houra long integer representing the hour to set; it must be in the range 0–23 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setHoursOffset (   self,
  hoursOffset 
)

Sets the value of this Date object's time zone hour offset.

setHoursOffset(long  hoursOffset)   int
Parameters
hoursOffseta long integer representing the hours of the offset; it must be in the range 0–12 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setMinute (   self,
  minute 
)

Sets the value of the minute of this Date object.

setMinute(long  minute)   int
Parameters
minutea long integer representing the minute to set; it must be in the range 0–59 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setMinutesOffset (   self,
  minutesOffset 
)

Sets the value of this Date object's time zone minutes offset.

setMinutesOffset(long  minutesOffset)   int
Parameters
minutesOffseta long integer representing the minutes of the offset; it must be in the range 0–59 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setMonth (   self,
  month 
)

Sets the value of the month of this Date object.

setMonth(long  month)   int
Parameters
montha long integer representing the month; it must be in the range 1–12 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setSecond (   self,
  second 
)

Sets the value of the second of the Date object.

setSecond(long  second)   int
Parameters
seconda long integer representing the seconds; it must be in the range 0–59 or an error will be signaled.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setSignOffset (   self,
  sign 
)

Sets the value of the sign of the time zone offset of this Date object.

setSignOffset(long  sign)   int

The only permissible values are 0 and 1.

Parameters
signa long integer representing the sign of the offset, with 0 signifying + and 1 signifying -.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Date.setYear (   self,
  year 
)

Sets the value of the year of this Date object.

setYear(long  year)   int

The value given as argument must be between 1000 and 9999 inclusive. (In the millennium during which this libSBML documentation is being written, a typical value is 2011, but we hope that SBML will continue to be used for a long time.)

Parameters
yeara long integer representing the year.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are: