Dates, time, positional data; conformance; and minor edits.

My comment has three parts: (1) some questions on considerations with
respect to dates, time and positional data; (2) some concerns with respect
to section 6 (conformance); and (3) a number of minor editing points.

PART 1.
3.3.28 recurringDate
<SPAN class=termdef>... "Arbitrary recurring dates are not supported by this
datatype. </SPAN>"

Has there been any consideration given to sets of recurring date specific
elements (e.g., July 4th, Dec. 25th, Jan. 1st, and the "eves" of some
holidays).  This is a form of data (as well as a specific content value)
that is likely to occur in many documents.  The government and the
Department of Defense make use of elements of this form in both contracts
and regulations (particularly as different documents are viewed in different
nations).  Named events with specific, defined date values should be
addressed.

Time is a type of value that may require either absolute or relative
translation to the time zone for which a document is being rendered.  The
military uses a universal time base to allow consistent coordination of
efforts across time zones.  As international corporations become more
frequent users of these standards (W3C's) they will probably also need a
similar consistency that is enforceable as part of this guideline.

Positional Data:
Another type of data element that is going to become more frequent in
documents is the GPS coordinate.  There are several variants for this
notation and again the increasing need to be international in our thinking
(and representation) should be addressed here and an appropriate data type
defined.  


PART 2.
6 Conformance
...
"<SPAN class=termdef>[Definition:]   Minimally conforming ..." </SPAN>
"<SPAN class=termdef>[Definition:]   Processors which accept schemas in the
form of XML documents as described in XML representation of datatype
definitions (§5.1)
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  are
additionally said to provide conformance to the XML Representation of
Schemas, and must
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> , when
processing schema documents, completely and correctly implement all Schema
Representation Constraint
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> s in this
specification, and must
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  adhere
exactly to the specifications in XML representation of datatype definitions
(§5.1) <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
for mapping the contents of such documents to schema components
<http://www.w3.org/TR/2000/WD-xmlschema-1-20000407/>  for use in validation.
</SPAN>
	NOTE: By separating the conformance requirements relating to the
concrete syntax of XML schema documents, this specification admits
processors which validate using schemas stored in optimised binary
representations, dynamically created schemas represented as programming
language data structures, or implementations in which particular schemas are
compiled into executable code such as C or Java. Such processors can be said
to be minimally conforming
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  but not
necessarily in conformance to the XML Representation of Schemas
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . "

Should there be consideration given to the development of a way to represent
(and communicate) an alternative process for the acceptance of additional
XML documents with a representation of datatype definitions and the
(subsequent) generation of a new optimised binary representation,
dynamically created schema represented as a programming language data
structure, or an implementation in which the particular schema is compiled
into executable code?  It is likely that there will be some automatic or
semi-automatic process for generating the alternative representation in most
systems.  Should the notion of a level or type of conformance be addressed?
A datatype processor that provides an automated means to generate a more
efficient representation but which allows completely automatic extension or
change is really resulting in the same outcome as the second definition (for
conformance to the XML Representation of Schemas) in section 6.


PART 3.

Suggested minor corrections or changes are annotated as follows:
{{existing material}} [[replacement material]]

Status of this document 
A list of current W3C working drafts can be found at http://www.w3.org/TR/
<http://www.w3.org/TR/> . They may be updated, replaced, or
{{obsoleted}}[[made obsolete]] by other documents at any time. It is
inappropriate to use W3C Working Drafts as reference material or to cite
them as other than "work in progress".

2.2 Value space
<SPAN class=termdef>[Definition:]  A value space is the set of values for a
given datatype. Each value in the value space of a datatype is denoted by
one or more literals in its lexical space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . </SPAN>
The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of a
given datatype can be defined in one of the following ways: 
*	defined axiomatically from fundamental notions
({{intensional}}[[intentional]] definition) [see primitive
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> ] 

</DIV><DIV class=div4>
2.4.2.12 encoding
<SPAN class=termdef>[Definition:]  encoding is the encoded form of the
lexical space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of
datatypes derived
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  from
binary <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> .
The value of encoding must
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  be one
of {hex, base64}. </SPAN>
If the value of encoding is hex then each binary {{octect}}[[octet]] is
encoded as a character tuple, consisting the two hexadecimal digits
([0-9a-fA-F]) representing the octet code. For example, "20" is the hex
encoding for the US-ASCII space character.

2.5.2 Primitive vs. derived datatypes
Next, we {{distinquish}}[[distinguish]] between primitive
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  and
derived <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
datatypes. 

In section 2.5.2 Primitive vs. derived datatypes:


<SPAN class=termdef>[Definition:]  Every derived
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  datatype
is defined in terms of an existing datatype, referred to as the base type.
[[Each ]]base type{{s}} {{may}}[[must]] be either primitive
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  or
derived <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
.</SPAN> 

3.2.7 recurringDuration
<SPAN class=termdef>[Definition:]   recurringDuration represents a
timeDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  that
recurs with a specific timeDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  starting
from a specific origin. The order-relation
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  on
timeDuration is: x < y iff y - x is positive. </SPAN>
Recurring duration has two constraining facets duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  and
period <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
whose values must
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  be
specified when the datatype is defined. These facets specify the length of
the duration and after what duration it recurs. The lexical format used to
specify these facet values is the lexical format for timeDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . A value
of 0 for the facet period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  means
that the duration does not recur i.e. there is but a single
{{ocurrence}}[[occurrence]]. A value of 0 for the facet duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  means
that the duration is, in fact, a single instant of time. 

3.3.22 time
<SPAN class=termdef>[Definition:]  time represents an instant of time that
recurs every day. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of time
is the space of time of day values as defined in § 5.3 of [ISO 8601]
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . The
base type <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
of time is recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . [[The
value of]] date is generated from recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "P0Y" and the value of the period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "PY24H" (24 hours). </SPAN>

3.3.23 timePeriod
<SPAN class=termdef>[Definition:]  timePeriod represents a specific period
of time with a given start and end. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of
timePeriod is the value space of Periods of time as defined in § 5.5 of [ISO
8601] <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> .
The base type
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of
timePeriod is recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . [[The
value of]] timePeriod is generated from recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "P0Y" (no recurrence). </SPAN>
The value in the instance specifies the start of the time period while the
value of [[the]] duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet,
specified when subtypes are defined, gives the duration of the time period. 

3.3.25 month
<SPAN class=termdef>[Definition:]  month represents a timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  that
starts at midnight on the first day of the month and lasts until the
midnight that ends the last day of the month. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of date
is the set of Gregorian calendar months as defined in § 5.2.1 of [ISO 8601]
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . The
base type <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
of month is timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . [[The
value of]] month is generated from timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "P1M" (the number of days in the specified month). </SPAN>

3.3.25.1 Lexical Representation
The lexical representation for month is the reduced (right truncated)
lexical representation for timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> :
CCYY-MM. No left truncation is allowed. An optional following time zone
qualifier is allowed as for timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . To
accommodate year values outside the range from 0 to 9999, additional digits
can be added to the left of this representation and an preceding "-" is
allowed. 

3.3.26 year
<SPAN class=termdef>[Definition:]  year represents a timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  that
starts at the midnight that starts the first day of the year and ends at the
midnight that ends the last day of the year. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of year
is the set of Gregorian calendar years as defined in § 5.2.1 of [ISO 8601]
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . The
base type <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
of year is timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . [[The
value of]] year is generated from timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "P1Y" (the time duration of the specified year). </SPAN>
<DIV class=div4>
3.3.26.1 Lexical Representation
The lexical representation for year is the reduced (right truncated) lexical
representation for timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> : CCYY.
No left truncation is allowed. An optional following time zone qualifier is
allowed {{as for}}[[in]] timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . To
accommodate year values outside the range from 0 to 9999, additional digits
can be added to the left of this representation and an preceding "-" is
allowed. 
For example, to indicate 1999, one would write: 1999. See also ISO 8601 Date
and Time Formats (§D)
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . 

3.3.27.1 Lexical Representation
The lexical representation for century is the reduced (right truncated)
lexical representation for timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> : CC. No
left truncation is allowed. An optional following time zone qualifier is
allowed {{as for}}[[in]] timePeriod
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . To
accommodate year values outside the range from 0 to 9999, additional digits
can be added to the left of this representation and an preceding "-" is
allowed. 


3.3.28 recurringDate
<SPAN class=termdef>[Definition:]   recurringDate is a date that recurs,
specifically a day of the year such as the third of May. Arbitrary recurring
dates are not supported by this datatype. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of
recurringDate is the set of calendar dates, as defined in § 3 of [ISO 8601]
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . The
base type <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
of recurringDate is recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . [[The
value of]] recurringDate is generated from recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "PT24H" (24 hours) and the value of the period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet to
"P1Y" (one year). </SPAN>

3.3.29 recurringDay
<SPAN class=termdef>[Definition:]   recurringDay is a day that recurs,
specifically a day of the month such as the 5th of the month. Arbitrary
recurring days are not supported by this datatype. The value space
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of
recurringDay is the space of a set of calendar dates as defined in § 3 of
[ISO 8601]
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . The
base type <http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>
of recurringDay is recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> .
recurringDay is generated from recurringDuration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  by
setting the value of the duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet
equal to "PT24H" (24 hours) and the value of the period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  facet to
"P1M" (one month). </SPAN>

In section 4.1 Datatype definition

The value of {facets}
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  consists
of the [[union of the ]]set of facet
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> s
specified directly in the datatype definition {{unioned with}}[[and]] the
possibly empty set of {facets}
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html>  of {base
type definition}
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . 

In each of the sections noted the numbered "validation contribution" entry
starts with a lower case character rather than an upper case entry:
4.2.4 pattern 
4.2.5 enumeration
4.2.10 precision
4.2.11 scale
</DIV></DIV><DIV class=div3>

In section 4.2.13 duration
	NOTE: There are no Validity Contribution
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> s
associated [[with]] duration
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . 

In section 4.2.14 period
	NOTE: There are no Validity Contribution
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> s
associated [[with]] period
<http://www.w3.org/TR/2000/WD-xmlschema-2-20000407/datatypes.html> . 

I am not as particular as my editing notes may make me seem to be.  I offer
these notes as an aid to the authors.

Frank

Dr. Frank Mabry
Dept. of EE&CS, U.S. Military Academy
West Point, NY 10996
email: df6954@eecs1.eecs.usma.edu
Phone: (914) 938-2960

Received on Wednesday, 31 May 2000 14:41:16 UTC