- From: Martin Duerst <duerst@w3.org>
- Date: Tue, 30 Mar 2004 14:08:21 -0500
- To: Addison Phillips <aphillips@webmethods.com>
- Cc: public-i18n-ws@w3.org
Hello Addison,
Here is the new text of section 3.3. Please put it into your copy
of the usage scenarios document.
Regards, Martin.
</div2>
<div2><head>Locale Independent vs. Locale Dependent Data</head>
<ednote><edtext>Using locale indep. representations makes i18n
easier/better/stronger.
Some types are more or less independent. [Owner: Martin]</edtext></ednote>
<p>When designing data structures for applications in general and for
Web services
in particular, it is important to design data structures in a
locale-independent way
wherever possible. Keeping the data itself from the representation for
the user leads
to a clearer application structure, drastically reduces the number of
formats for
interchange, avoids the need for additional information to distinguish
different
formats, and allows 'late localization' or 'just in time localization'
@@@@ reference Mark's paper????@@@@.</p>
<p> The use of XML Schema in Web services helps promote
locale-independent data
because most of the XML Schema datatypes <bibref ref="XMLS-2"/> have
been designed
to be locale-independent.</p>
<div3><head>Textual vs. Binary Representations</head>
<p>In many traditional applications, the distinction between
locale-independent and
locale-dependent datatypes is also a distinction between binary
representations and
textual represenations. As an example, a floating-point number is
represented in some
binary format internal to an application, and is converted to a text ual
format, with
appropriate localization formatting (e.g. using a decimal comma rather
than a decimal
point for many European locales), for output to the user.</p>
<p>Because XML is an
inherently textual format, the XML Schema Datatypes also are textual.
Nevertheless,
most of them were carefully designed to be locale-independent, and are
intended to
be used locale-independent. As an example, the XML Schema Datatype
<code>date</code>
uses the format YYYY-MM-DD from @@@@ISO 8601@@@@. This format is similar
(and in some
cases even identical) to some actual formats used in some locales, but
has to be
understood and used as a locale-independent format. Choosing a format
that is not
used in any locale, for example just numbering days since a well-defined
day, would
only have made the format much more difficult for humans to work with,
without any
benefits.</p></div3>
<div3><head>Locale-dependent XML Schema datatypes</head>
<p>While most datatypes in XML Schema are locale-independent, there are
a few that
are locale-dependent, and that therefore should be avoided. These are
all the
datatypes that start with 'g', namely <code>gYearMonth</code>,
<code>gYear</code>,
<code>gMonthDay</code>, <code>gDay</code>, and <code>gMonth</code>, and the
<code>duration</code> datatype.</p><p>The semantics of these datatypes are
bound to the Gregorian calendar.
As an example, a value of type <code>gMonth</code> such as '5' refers to
<emph>May in each year
of the Gregorian calendar</emph>. Such a concept cannot be converted to
calendars that
do not have their months aligned with the months of the Gregorian
calendar, such as the Islamic, Hebrew, or Ethiopic calendar.</p>
<p>On the other hand, the semantics of the other date- and time-related
XML Schema datatypes are not bound to the Gregorian calendar, although they
rely on the Gregorian calendar for their lexical form. For example, the
<code>date</code> <code>2004-03-30</code> can not only be converted to
<code>March 30, 2004</code> (still using the Gregorian calendar), but also
to @@@@insert e.g. Ethiopic example here@@@@.</p></div3>
<div3><head>Examples</head>
<example>
<head>Some locale-independent XML Schema datatypes</head>
<eg>
TYPE : EXAMPLE
---------------- ---------------------------
date : 2003-05-31
time : 13:20:00
dateTime : 2003-05-31T13:20:00+09:00
double : 1267.43233E12
integer : 2678967543233</eg>
</example>
<example><head>Locale-dependent XML Schema datatypes</head>
<eg>
TYPE : EXAMPLE
---------------- ---------------------------
duration : P1Y2M3D
gYearMonth : 2003-05
gYear : 2003
gMonthDay : 05-25
gDay : 25
gMonth : 05
</eg></example></div3></div2>
Received on Tuesday, 30 March 2004 14:08:37 UTC