Identifiers for instances of temporal region

In an RTS/Ontology meeting on Tuesday, July 23, Roger Hall raised the issue of the ability to compute instance-unique identifiers for temporal regions (such as the year 1984, the day July 23 2013, the 20th century, etc.), instead of generating random IUIs for them (which currently we use UUIDs for IUIs).  The reason is that two different referent tracking systems (RTSs) could generate a different IUI for August 16, 2010.  However, if there way for them to generate the same IUI independently, interoperability of RTSs would be vastly improved.  Another advantage is that we could also potentially eliminate the need for parts of the Temporal Entity (Te) and Temporal Entity Name (Ten) templates, but not the entire template in either case because we still need to say what type of temporal region (Te template) and the ability to give it multiple names (Ten template).

Issues:

  1. Storing whatever IUIs get created for temporal entities along with UUIDs as IUIs for other types of entities
    1. If we have non-randomly generated UUIDs, we would increase the probability of non-unique UUIDs
    2. If we store IUIs for temporal entities in different places/fields than we store IUIs, then we would need to create different template types potentially.  For example, we currently use PtoP templates to relate temporal entities to one another.  If their IUIs were significantly different from UUIDs, we'd need a Temporal PtoP (tPtoP) template.
    3. The ta and tr parameters could already hold a different type of IUI than UUID.
    4. However, it's when we want to include different IUIs in the iuip and p parameters of the PtoP template where we encounter difficulty.
  2. The calculated IUI could just be an ISO8601 string
    1. We mostly care about dates
      1. The year 1984 is an interval and we could just denote it with the IUI '1984'.
      2. Ditto for '2013-07-23', '2013-07-23T12:00-0:00", etc.
    2. We already end up relating intervals for which we don't know one or both endpoints to intervals we do know
      1. For example, date of birth.  We represent the point in time of birth, and state that it is "during" the day.  So if your birthday is 1985-03-22, we assign an IUI to point in time of your birth (IUI_birth) and state: IUI_birth during IUI_1985_03_22 (in a PtoP template).  We then give IUI_1985_03_22 a name in a Ten template.
    3. But, we enforce a particular calendaring system on everyone (which everyone pretty much has to use anyway)