<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>17856</bug_id>
          
          <creation_ts>2012-07-18 07:04:32 +0000</creation_ts>
          <short_desc>i18n-ISSUE-89: Time zones and local dates and times</short_desc>
          <delta_ts>2013-07-29 23:31:47 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WHATWG</product>
          <component>HTML</component>
          <version>unspecified</version>
          <rep_platform>Other</rep_platform>
          <op_sys>other</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>Unsorted</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>contributor</reporter>
          <assigned_to name="Ian &apos;Hixie&apos; Hickson">ian</assigned_to>
          <cc>addison</cc>
    
    <cc>cmhjones</cc>
    
    <cc>ian</cc>
    
    <cc>mike</cc>
    
    <cc>public-i18n-core</cc>
    
    <cc>silviapfeiffer1</cc>
          
          <qa_contact>contributor</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>70182</commentid>
    <comment_count>0</comment_count>
    <who name="">contributor</who>
    <bug_when>2012-07-18 07:04:32 +0000</bug_when>
    <thetext>This was was cloned from bug 16960 as part of operation convergence.
Originally filed: 2012-05-07 17:13:00 +0000
Original reporter: Addison Phillips &lt;addison@lab126.com&gt;

================================================================================
 #0   Addison Phillips                                2012-05-07 17:13:18 +0000 
--------------------------------------------------------------------------------
2.5.5.4 Local dates and times
http://www.w3.org/TR/html5/common-microsyntaxes.html#local-dates-and-times

This section defines &apos;local dates and times&apos;, which is a date-and-time value *without* a time zone. This type seems problematic because it does not deal with the time zone problem. Its relationship to either floating or incremental times is completely arbitrary. See also i18n-ISSUE-88.
================================================================================</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>74685</commentid>
    <comment_count>1</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2012-09-27 23:36:32 +0000</bug_when>
    <thetext>What is the request here?

(Sometimes you need a floating time. For example, when asking the user for a time on an alarm clock, the time has to be in the user&apos;s local time zone regardless of what that is, and needs to &quot;float&quot; if the user changes time zone. Similarly, flight booking sites might ask for the user&apos;s airports and preferred departure or arrival date and times, and would do so without a time zone so that they could automatically adjust the time to the actual UTC time based on the airports&apos; time zones.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91342</commentid>
    <comment_count>2</comment_count>
    <who name="Silvia Pfeiffer">silviapfeiffer1</who>
    <bug_when>2013-07-27 09:38:31 +0000</bug_when>
    <thetext>Please see Addison&apos;s feedback in https://www.w3.org/Bugs/Public/show_bug.cgi?id=16960 .

The way I understand it, it&apos;s both a problem of naming (it&apos;s not really a &quot;local&quot; date and time, but a &quot;floating&quot; date and time), as well as a request for an example (like the two you gave in #c1).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91390</commentid>
    <comment_count>3</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2013-07-29 20:10:34 +0000</bug_when>
    <thetext>(In reply to bug 16960 comment #3)
&gt; One way of addressing it would be to define it in terms of a floating time
&gt; value, although floating times are usually either a date (with no
&gt; hour/minute/second value) representing an event such as a birthdate that is
&gt; not ties to a specific time zone or to a time (with no day/month/year) which
&gt; can be interpreted as a local wall time in any time zone (such as the time
&gt; of day to observe the DST transition), rather than a combination of both.

Renaming the types at this time is something we could do, but only if the new name is especially compelling and the old name especially problematic. It&apos;s not clear to me that either of these are true (e.g. see the caveats in the paragraph above, and note that the definition of &quot;floating&quot; in the paragraph above does in fact use the term &quot;local&quot; — they&apos;re not _that_ different really). Certainly there are use cases for type=local-datetime that aren&apos;t strictly about &quot;local&quot; values, but there are many that are. A perfect name is difficult to find here.


&gt; Another would be to mention the problem of time zones and allow
&gt; implementations to tie the value to a specific arbitrary time zone (probably
&gt; UTC) when comparing/converting to/from incremental time values. For example,
&gt; ECMAScript Date values are incremental times (millis since epoch) and the
&gt; relationship between &apos;local date and time&apos; and this type of incremental time
&gt; should be clear.

The problem of time zones is repeatedly and thoroughly discussed in the specification already, but if there&apos;s anywhere in particular where it should be discussed but isn&apos;t currently, I&apos;m happy to consider adding more. Please be specific about where such text should be and concrete about what use cases it should discuss.

I don&apos;t think associating a time zone makes sense, though. The whole point of the value is that it doesn&apos;t have a time zone.


&gt; Note that if this were the case, the name of the microsyntax would be
&gt; misleading. It&apos;s not a &apos;local date and time&apos; unless it somehow corresponds
&gt; to local wall time, is it? But if it corresponds to local wall time, then it
&gt; inherently has a time zone which is most probably not UTC. In that case, the
&gt; time zone should be explicit and explicitly available.

The time zone likely _is_ explicit, or at least implicit, in the overall UI, e.g. if you are picking a preferred time for a flight, you usually give the time as a local time and give the time zone as an airport code.


&gt; I am aware that this microsyntax is not an invention of HTML5, but the I18N
&gt; WG is concerned that the definitions provided make it too easy to create
&gt; forms and pages that don&apos;t handle time values correctly or which change time
&gt; values in subtle but quite broken ways.

We have a broad array of types in the HTML spec to handle most use cases for times in UI. I agree that it&apos;s easy to shoot yourself in the foot with these, but honestly I think that&apos;s more about the fact that times and time zones are complicated and less about the specifics of HTML&apos;s control types.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91395</commentid>
    <comment_count>4</comment_count>
    <who name="Silvia Pfeiffer">silviapfeiffer1</who>
    <bug_when>2013-07-29 22:23:55 +0000</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to bug 16960 comment #3)
&gt; &gt; One way of addressing it would be to define it in terms of a floating time
&gt; &gt; value, although floating times are usually either a date (with no
&gt; &gt; hour/minute/second value) representing an event such as a birthdate that is
&gt; &gt; not ties to a specific time zone or to a time (with no day/month/year) which
&gt; &gt; can be interpreted as a local wall time in any time zone (such as the time
&gt; &gt; of day to observe the DST transition), rather than a combination of both.
&gt; 
&gt; Renaming the types at this time is something we could do, but only if the
&gt; new name is especially compelling and the old name especially problematic.

The use of the therm &quot;floating time&quot; seems compelling to me. It&apos;s not even something that has to be defined in the HTML spec, since it&apos;s defined here: http://www.w3.org/TR/2011/NOTE-timezone-20110705/#floating and also here: http://www.ietf.org/rfc/rfc2445.txt and seems a commonly used term in coding, eg. http://search.cpan.org/~drolsky/DateTime-TimeZone-1.60/lib/DateTime/TimeZone/Floating.pm and applications, eg. http://www.macobserver.com/tmo/article/Understanding_iCal_Time_Zones.

It&apos;s more concrete than &quot;local date and time&quot;, because the determination of &quot;local&quot; implies a point of reference. Thus, we&apos;d need to specify whether it&apos;s with reference to the local time zone of the browser - or the local time zone of the server or some other reference point. We, in fact, want the opposite: we want something that has no time zone and no point of reference. 

&gt; It&apos;s not clear to me that either of these are true (e.g. see the caveats in
&gt; the paragraph above, and note that the definition of &quot;floating&quot; in the
&gt; paragraph above does in fact use the term &quot;local&quot; — they&apos;re not _that_
&gt; different really).

It depends on when the mapping to a wall-clock time happens. A &quot;local date and time&quot; implies that the mapping happens at the time of input/selection in the browser. After that, the time zone is fixed. In contrast, a &quot;floating time&quot; implies that there is no time zone and it&apos;s always mapped at the time of display, which is more accurate.

&gt; Certainly there are use cases for type=local-datetime
&gt; that aren&apos;t strictly about &quot;local&quot; values, but there are many that are. A
&gt; perfect name is difficult to find here.

&quot;floating&quot; works for me and was also what you used in #c1 to explain what &apos;local dates and times&apos; means.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91396</commentid>
    <comment_count>5</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2013-07-29 23:31:47 +0000</bug_when>
    <thetext>(In reply to comment #4)
&gt; 
&gt; The use of the therm &quot;floating time&quot; seems compelling to me.

Unfortunately it&apos;s often wrong. Most use cases for type=datetime-local are cases with an explicit or implicit time zone. For example, an airline flight picker would use type=datetime-local, with the time zone implied by the airport code.


&gt; It&apos;s not even something that has to be defined in the HTML spec, since
&gt; it&apos;s defined here

I&apos;m not sure how that would affect this one way or the other.


&gt; It&apos;s more concrete than &quot;local date and time&quot;, because the determination of
&gt; &quot;local&quot; implies a point of reference.

There often is a point of reference.


&gt; Thus, we&apos;d need to specify whether it&apos;s with reference to the local time zone
&gt; of the browser - or the local time zone of the server or [...]

It varies on a case-by-case basis.


&gt; We, in fact, want the opposite: we want something that has no time zone
&gt; and no point of reference. 

That is contrary to the point of this type.


&gt; It depends on when the mapping to a wall-clock time happens. A &quot;local date
&gt; and time&quot; implies that the mapping happens at the time of input/selection in
&gt; the browser.

Right.


&gt; After that, the time zone is fixed.

In most cases, but not necessarily.


&gt; In contrast, a &quot;floating
&gt; time&quot; implies that there is no time zone and it&apos;s always mapped at the time
&gt; of display, which is more accurate.

More accurate for some uses, but not all.


&gt; &quot;floating&quot; works for me and was also what you used in #c1 to explain what
&gt; &apos;local dates and times&apos; means.

I gave two examples in comment 1; the first is a floating time, the second is not.



I&apos;m marking this WONTFIX since this is also covered by a WHATWG thread that I just responded to, and I&apos;d rather not discuss this in two locations. If you have further information to add, please respond on the WHATWG thread. Thanks.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>