XTCE 1.2 RTF Avatar
  1. OMG Issue

XTCE12 — AbsoluteTimeParameterType Epoch is not always at midnight

  • Key: XTCE12-448
  • Status: closed  
  • Source: Boeing ( Mr. David Overeem)
  • Summary:

    The Epoch element in the time types does not allow an XTCE user to specify an Epoch date that is not anchored at midnight. At present it is a union of xs:date and xs:string with a restriction on 1 value, which is TAI.

  • Reported: XTCE 1.1 — Thu, 25 May 2017 13:23 GMT
  • Disposition: Resolved — XTCE 1.2
  • Disposition Summary:

    Propose to update the Epoch element in time types

    Additional backwards compatible updates to the Epoch element will resolve this issue.

    First, update the annotations in the complexType ReferenceTimeType. Replace the existing type element in the schema with this content:

    <complexType name="ReferenceTimeType">
    <annotation>
    <documentation xml:lang="en">Most time values are relative to another time e.g. seconds are relative to minutes, minutes are relative to hours. This type is used to describe this relationship starting with the least significant time Parameter to and progressing to the most significant time parameter. </documentation>
    </annotation>
    <choice>
    <element name="OffsetFrom" type="xtce:ParameterInstanceRefType"/>
    <element name="Epoch" type="xtce:EpochType">
    <annotation>
    <documentation xml:lang="en">Epochs may be specified as an xs date where time is implied to be 00:00:00, xs dateTime, or string enumeration of common epochs. The enumerations are TAI (used by CCSDS and others), J2000, UNIX (also known as POSIX), and GPS.</documentation>
    </annotation>
    </element>
    </choice>
    </complexType>

    Next, update the simpleType named EpochType with updated annotation and additional options in the union. In addition, the previous type named "TAIType" is renamed to be more accurate following this change. It is now named "EpochTimeEnumsType":

    <simpleType name="EpochType">
    <annotation>
    <documentation xml:lang="en">Epochs may be specified as an xs date where time is implied to be 00:00:00, xs dateTime, or string enumeration of common epochs. The enumerations are TAI (used by CCSDS and others), J2000, UNIX (also known as POSIX), and GPS.</documentation>
    </annotation>
    <union memberTypes="date dateTime xtce:EpochTimeEnumsType"/>
    </simpleType>

    Now replace the existing type "TAIType" with the "EpochTimeEnumsType" as shown below:

    <simpleType name="EpochTimeEnumsType">
    <annotation>
    <documentation xml:lang="en">Union values of common epoch definitions for document convenience.</documentation>
    </annotation>
    <restriction base="string">
    <enumeration value="TAI"/>
    <enumeration value="J2000"/>
    <enumeration value="UNIX"/>
    <enumeration value="GPS"/>
    </restriction>
    </simpleType>

  • Updated: Tue, 10 Jul 2018 14:22 GMT