Ignore:
Timestamp:
Dec 31, 2012, 9:58:52 PM (7 years ago)
Author:
fielding@…
Message:

(editorial) another attempt to explain GMT as UTC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p2-semantics.html

    r2076 r2077  
    28042804      <h3 id="rfc.section.7.1.1"><a href="#rfc.section.7.1.1">7.1.1</a>&nbsp;<a id="origination.date" href="#origination.date">Origination Date</a></h3>
    28052805      <h4 id="rfc.section.7.1.1.1"><a href="#rfc.section.7.1.1.1">7.1.1.1</a>&nbsp;<a id="http.date" href="#http.date">Date/Time Formats</a></h4>
    2806       <p id="rfc.section.7.1.1.1.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is
    2807          a fixed-length subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>:
     2806      <p id="rfc.section.7.1.1.1.p.1">HTTP has historically allowed three different formats for date/time stamps. However, the preferred format is a fixed-length
     2807         subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>:
    28082808      </p>
    28092809      <div id="rfc.figure.u.42"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 1123
     
    28112811      <div id="rfc.figure.u.43"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format
    28122812Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format
    2813 </pre><p id="rfc.section.7.1.1.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields.
    2814       </p>
    2815       <p id="rfc.section.7.1.1.1.p.6">All HTTP date/time stamps are represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is
    2816          exactly equal to UTC (Coordinated Universal Time). This is indicated in the first two formats by the inclusion of "GMT" as
    2817          the three-letter abbreviation for time zone, and is assumed when reading the asctime format. HTTP-date is case sensitive.
    2818          A sender <em class="bcp14">MUST NOT</em> generate additional whitespace in an HTTP-date beyond that specifically included as SP in the grammar.
     2813</pre><p id="rfc.section.7.1.1.1.p.5">HTTP always represents dates as an instance of Coordinated Universal Time (UTC), without exception; the first two formats
     2814         indicate UTC as "GMT" in the three-letter abbreviation for time zone. Recipients <em class="bcp14">MAY</em> assume UTC even if the time zone abbreviation is missing, invalid, or might indicate some other time zone.
    28192815      </p>
    28202816      <div id="rfc.figure.u.44"></div><pre class="inline"><span id="rfc.iref.g.39"></span>  <a href="#http.date" class="smpl">HTTP-date</a>    = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>
    28212817</pre><div id="preferred.date.format">
    2822          <p id="rfc.section.7.1.1.1.p.8">                    Preferred format:</p>
     2818         <p id="rfc.section.7.1.1.1.p.7">                    Preferred format:</p>
    28232819      </div>
    28242820      <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span>  <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>
     
    28602856  <a href="#preferred.date.format" class="smpl">minute</a>       = 2<a href="#imported.abnf" class="smpl">DIGIT</a>               
    28612857  <a href="#preferred.date.format" class="smpl">second</a>       = 2<a href="#imported.abnf" class="smpl">DIGIT</a>               
    2862 </pre><p id="rfc.section.7.1.1.1.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>).
     2858</pre><p id="rfc.section.7.1.1.1.p.9">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>).
    28632859      </p>
    28642860      <div id="obsolete.date.formats">
    2865          <p id="rfc.section.7.1.1.1.p.11">              Obsolete formats:</p>
     2861         <p id="rfc.section.7.1.1.1.p.10">              Obsolete formats:</p>
    28662862      </div>
    28672863      <div id="rfc.figure.u.46"></div><pre class="inline"><span id="rfc.iref.g.52"></span>  <a href="#obsolete.date.formats" class="smpl">obs-date</a>     = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a>
     
    28802876  <a href="#obsolete.date.formats" class="smpl">date3</a>        = <a href="#preferred.date.format" class="smpl">month</a> <a href="#imported.abnf" class="smpl">SP</a> ( 2<a href="#imported.abnf" class="smpl">DIGIT</a> / ( <a href="#imported.abnf" class="smpl">SP</a> 1<a href="#imported.abnf" class="smpl">DIGIT</a> ))
    28812877                 ; month day (e.g., Jun  2)
    2882 </pre><div class="note" id="rfc.section.7.1.1.1.p.15">
     2878</pre><p id="rfc.section.7.1.1.1.p.14">HTTP-date is case sensitive. A sender <em class="bcp14">MUST NOT</em> generate additional whitespace in an HTTP-date beyond that specifically included as SP in the grammar.
     2879      </p>
     2880      <p id="rfc.section.7.1.1.1.p.15">Recipients that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0). A sender <em class="bcp14">MUST</em> only generate the RFC 1123 format when sending HTTP-date values in header fields.
     2881      </p>
     2882      <div class="note" id="rfc.section.7.1.1.1.p.16">
    28832883         <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that might have been sent by non-HTTP applications,
    28842884            as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP.
    28852885         </p>
    28862886      </div>
    2887       <div class="note" id="rfc.section.7.1.1.1.p.16">
     2887      <div class="note" id="rfc.section.7.1.1.1.p.17">
    28882888         <p> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers
    28892889            are not required to use these formats for user presentation, request logging, etc.
Note: See TracChangeset for help on using the changeset viewer.