|
From: Peter C. C. <pc...@ec...> - 2003-05-05 03:29:44
|
Greetings all! The list has been very quiet lately. I imagine that, like
me, everyone has been busy with other things. I'm hoping to get things
rolling again, though. The good weather has finally arrived to my part of
the world and I'm looking forward to a good summer of observing!
A few comments:
1. I sent a message to the administrators of StarGazersOnline asking how
they are storing member observation logs and inviting them to participate
in our project.
2. I modified my proposal for handling dates and times. In particular,
following Don's suggestion I split my original datetimeType into two
different types: absoluteDatetimeType and localDatetimeType. Thus we would
be able to specify elements that are absolute times (the usual case) and
that prohibit the use of "pure" local times. Likewise we would be able to
specify elements that are pure local times... such elements would need
some associated geographical information in order to be fully meaningful.
I also defined an absoluteDatetimeRangeType and a localDatetimeRangeType
for describing a range of times. Mixing absolute and local times in a
range doesn't seem to make sense so it is prohibited. However, mixing two
different time formats in a range is okay (for example JD numbers and
standard ISO formatted date/times). The full details are at the end of
this message.
3. As I recall we agreed to add an <object-group> element to the schema to
allow an observation to be made on a collection of closely related or
"involved" objects at once. Shall I go ahead and make that change? It was
something Don originally brought up as I recall so if he wants to finalize
that change that is also fine with me.
4. Some time ago Tom posted a message explaining to me the difference
between xs:any and xs:anyType. I have saved that message for further
study. Perhaps we should use some of the techniques he described to build
"stubs" for some of the larger more complex items of our schema (like
weather or geographic location). So that we could actually produce useful,
valid instance documents without first having to work out every detail.
How do folks feel about that?
Peter
----> datetime summary <----
<?xml version="1.0"?>
<xs:complexType name="absoluteDatetimeType">
<xs:annotation>
<xs:documentation><p xmlns="http://www.w3.org/1999/xhtml">This type
describes a moment in time. Its content is several mutually
exclusive options for representing dates and times. The options are
described as follows.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>JD</b>: The Julian Date
as a decimal value. The JD is defined in terms of date/time at 0
degrees of longitude. Thus it is not necessary to include specific
time zone information.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>ISO</b>: The full date
and time. This element is the same as xs:datetime except that the
time zone information is required.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>date</b>: The date alone
in ISO format. This element is the same as xs:date except that the
time zone information is required. It is intended to be used in an
observation set to define a common date for all observations in the
observation set.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>time</b>: The time alone
in ISO format. This element is the same as xs:time except that the
time zone information is <em>prohibited</em>. It is intended to be
used in an observation when a date (and time zone) are provided in
an enclosing observation set. In that case it inherits the date and
time zone from the observation set. Using this element in a case
where there is no date and time zone to inherit is
undefined.</p></xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="JD" type="xs:decimal"/>
<xs:element name="ISO" type="ISOdatetimeType"/>
<xs:element name="date" type="ISOdateType"/>
<xs:element name="time" type="ISOtimeType"/>
</xs:choice>
<xs:attribute name="resolution" type="xs:duration"/>
</xs:complexType>
<xs:complexType name="localDatetimeType">
<xs:annotation>
<xs:documentation><p xmlns="http://www.w3.org/1999/xhtml">This type
describes a time that is only meaningful at a particular location.
If an element with localDatetimeType is used, it should only be used
in a context where sufficient geographical information is available
to properly interpret the local time.</p>
<p xmlns="http://www.w3.org/1999/xhtml">There are several local time
formats supported. Time zone information is prohibited in all local
time formats since, by definition, the time zone is irrelevant for
local times. (A local time with a time zone is an absolute time and
should be recorded in an element with absoluteDatetypeTime).</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>LAT</b>: Local Apparent
Time. This is the time based on the actual position of the sun. It
is non-uniform since the sun moves at different rates across the
sky. However, this time is directly observable.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>LMT</b>: Local Mean Time.
This is the time based on the motion of a fictional "mean sun" that
moves at a uniform rate across the sky. It differs from LAT by the
equation of time. Note that LMT varies continuously across a time
zone.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>LST</b>: Local Standard
Time. This is the local time that is agreed upon by convention. It
is constant in a time zone and jumps discontinuously from one time
zone to another. This is the time most people use in their day to
day lives.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>LAST</b>: Local Apparent
Sidereal Time. This is the RA on meridian. It is directly
observable. It differs from LMT because the sidereal day has a
different length than the solar day.</p>
<p xmlns="http://www.w3.org/1999/xhtml"><b>LMST</b>: Local Mean
Sidereal Time. This is LAST after averaging the effects of
nutation.</p></xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="LAT" type="ISOtimeType"/>
<xs:element name="LMT" type="ISOtimeType"/>
<xs:element name="LST" type="ISOtimeType"/>
<xs:element name="LAST" type="ISOtimeType"/>
<xs:element name="LMST" type="ISOtimeType"/>
</xs:choice>
<xs:attribute name="resolution" type="xs:duration"/>
</xs:complexType>
<xs:complexType name="absoluteDatetimeRangeType">
<xs:annotation>
<xs:documentation>This type describes a range of absolute times. The
start element specifies the earliest time in the range. The end
element specifies the latest time in the range. Note that the start
and end times can have separate resolutions and different time
zones. They might even be in different formats. To be meaningful the
start and end times in a range must unambiguously ordered. See the
XML schema specification, "Part 2: Datatypes" for more information
on ordering date time values.</xs:documentation>
</xs:annotation>
<xs:element name="start" type="absoluteDatetimeType"/>
<xs:element name="end" type="absoluteDatetimeType"/>
</xs:complexType>
<xs:complexType name="localDatetimeRangeType">
<xs:annotation>
<xs:documentation>This type describes a range of local times. The
start element specifies the earliest time in the range. The end
element specifies the latest time in the range. Note that the start
and end times can have separate resolutions and different time
zones. They might even be in different formats. To be meaningful the
star and end times in a range must unambiguously ordered. See the
XML schema specification, "Part 2: Datatypes" for more information
on ordering date time values.</xs:documentation>
</xs:annotation>
<xs:element name="start" type="localDatetimeType"/>
<xs:element name="end" type="localDatetimeType"/>
</xs:complexType>
<xs:simpleType name="ISOdatetimeType">
<xs:annotation>
<xs:documentation>This restricted form of xs:datetime requires the
use of the timezone.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:datetime">
<xs:pattern value="\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ISOdateType">
<xs:annotation>
<xs:documentation>This restricted form of xs:date requires the use
of the timezone.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date">
<xs:pattern value="\d{4}-\d\d-\d\d(([+-]\d\d:\d\d)|Z)"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ISOtimeType">
<xs:annotation>
<xs:documentation>This restricted form of xs:time prohibits the use
of the timezone.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:time">
<xs:pattern value="\d\d:\d\d:\d\d(\.\d+)?"/>
</xs:restriction>
</xs:simpleType>
|