What Are Floating Times?
Q: What is a "floating time" and how do I handle floating times in my Web application?
A "floating time" or a "floating date" is a time value that isn't tied to a specific time zone.
The Working with Timezones WG Note says:
Some observed time values are not related to a specific moment in incremental time. Instead, they need to be combined with local information to determine a range of acceptable incremental time values. We refer to these sorts of time values as "floating times" because they are not fixed to a specific incremental time value. Floating times are not attached and should never be attached to a particular time zone.
A common example of a floating time value would be a publication date. The January 30, 2013, issue of a newspaper, magazine, or blog posting does not depend on the current local time of the person reading the document. For example, a document might describe its publication date this way:
<p>Publication Date: <time datetime="2013-01-30">January 30, 2013</time></p>
This last bit is important. While a floating time is not tied to a specific time zone, incremental times depend on time zone for their display. So you can easily have code in your Web page that looks like this:
var date = new Date(myPubDateElement.value); var target = document.getElementById("date_target"); target.appendChild(document.createTextNode(date.toDateString()));
Suppose your element "myPubDateElement" contained the value above (2013-01-30). You'd expect the element "date_target" contain a string representing that date. However, if you live in a time zone west of UTC, you'll get a surprise. It says:
Tue Jan 29 2013