Ignore:
Timestamp:
Sep 16, 2009, 5:09:34 AM (10 years ago)
Author:
julian.reschke@…
Message:

Clarify rules for determining what entities a response carries (see #110 #196)

File:
1 edited

Legend:

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

    r689 r695  
    399399      <meta name="DC.Creator" content="Reschke, J. F.">
    400400      <meta name="DC.Identifier" content="urn:ietf:id:draft-ietf-httpbis-p2-semantics-latest">
    401       <meta name="DC.Date.Issued" scheme="ISO8601" content="2009-09-01">
     401      <meta name="DC.Date.Issued" scheme="ISO8601" content="2009-09-16">
    402402      <meta name="DC.Relation.Replaces" content="urn:ietf:rfc:2616">
    403403      <meta name="DC.Description.Abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the seven-part specification that defines the protocol referred to as &#34;HTTP/1.1&#34; and, taken together, obsoletes RFC 2616. Part 2 defines the semantics of HTTP messages as expressed by request methods, request-header fields, response status codes, and response-header fields.">
     
    436436         </tr>
    437437         <tr>
    438             <td class="header left">Expires: March 5, 2010</td>
     438            <td class="header left">Expires: March 20, 2010</td>
    439439            <td class="header right">H. Frystyk</td>
    440440         </tr>
     
    485485         <tr>
    486486            <td class="header left"></td>
    487             <td class="header right">September 1, 2009</td>
     487            <td class="header right">September 16, 2009</td>
    488488         </tr>
    489489      </table>
     
    509509      <p>The list of Internet-Draft Shadow Directories can be accessed at &lt;<a href="http://www.ietf.org/shadow.html">http://www.ietf.org/shadow.html</a>&gt;.
    510510      </p>
    511       <p>This Internet-Draft will expire in March 5, 2010.</p>
     511      <p>This Internet-Draft will expire in March 20, 2010.</p>
    512512      <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1>
    513513      <p>Copyright © 2009 IETF Trust and the persons identified as the document authors. All rights reserved.</p>
     
    550550         </li>
    551551         <li class="tocline0">5.&nbsp;&nbsp;&nbsp;<a href="#response.header.fields">Response Header Fields</a></li>
    552          <li class="tocline0">6.&nbsp;&nbsp;&nbsp;<a href="#entity">Entity</a></li>
     552         <li class="tocline0">6.&nbsp;&nbsp;&nbsp;<a href="#entity">Entity</a><ul class="toc">
     553               <li class="tocline1">6.1&nbsp;&nbsp;&nbsp;<a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li>
     554            </ul>
     555         </li>
    553556         <li class="tocline0">7.&nbsp;&nbsp;&nbsp;<a href="#method.definitions">Method Definitions</a><ul class="toc">
    554557               <li class="tocline1">7.1&nbsp;&nbsp;&nbsp;<a href="#safe.and.idempotent">Safe and Idempotent Methods</a><ul class="toc">
     
    898901         safe and proper transfer of the message.
    899902      </p>
     903      <h2 id="rfc.section.6.1"><a href="#rfc.section.6.1">6.1</a>&nbsp;<a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2>
     904      <p id="rfc.section.6.1.p.1">It is sometimes necessary to determine the identity of the resource associated with a representation.</p>
     905      <p id="rfc.section.6.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p>
     906      <p id="rfc.section.6.1.p.3">In the common case, an HTTP response is a representation of the resource located at the request-URI. However, this is not
     907         always the case. To determine the URI of the resource a response is associated with, the following rules are used (first match
     908         winning):
     909      </p>
     910      <ol>
     911         <li>If the response status code is 200 or 203 and the request method was GET, the response is a representation of the resource
     912            at the request-URI.
     913         </li>
     914         <li>If the response status is 204, 206, or 304 and the request method was GET or HEAD, the response is a partial representation
     915            of the resource at the request-URI (see <a href="p6-cache.html#combining.headers" title="Combining Responses">Section 2.7</a> of <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).
     916         </li>
     917         <li>If the response has a Content-Location header, and that URI is the same as the request-URI <span class="comment" id="rfc.comment.1">[<a href="#rfc.comment.1" class="smpl">rfc.comment.1</a>: (see [ref])]</span>, the response is a representation of the resource at the request-URI.
     918         </li>
     919         <li>If the response has a Content-Location header, and that URI is not the same as the request-URI, the response asserts that
     920            it is a representation of the resource at the Content-Location URI (but it may not be).
     921         </li>
     922         <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li>
     923      </ol>
     924      <p id="rfc.section.6.1.p.5"> <span class="comment" id="TODO-req-uri">[<a href="#TODO-req-uri" class="smpl">TODO-req-uri</a>: Note that 'request-URI' is used here; however, we need to come up with a term to denote "the URI that can be inferred from
     925            examining the request-target and the Host header." (see &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/196">http://tools.ietf.org/wg/httpbis/trac/ticket/196</a>&gt;). Also, the comparison function is going to have to be defined somewhere, because we already need to compare URIs for things
     926            like cache invalidation.]</span>
     927      </p>
    900928      <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a>&nbsp;<a id="method.definitions" href="#method.definitions">Method Definitions</a></h1>
    901929      <p id="rfc.section.7.p.1">The set of common methods for HTTP/1.1 is defined below. Although this set can be expanded, additional methods cannot be assumed
     
    968996         without transferring data already held by the client.
    969997      </p>
    970       <p id="rfc.section.7.3.p.4">The response to a GET request is cacheable if and only if it meets the requirements for HTTP caching described in <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>.
     998      <p id="rfc.section.7.3.p.4">The response to a GET request is cacheable if and only if it meets the requirements for HTTP caching described in <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>.
    971999      </p>
    9721000      <p id="rfc.section.7.3.p.5">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section&nbsp;11.2</a> for security considerations when used for forms.
     
    25112539         </li>
    25122540         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/33">http://tools.ietf.org/wg/httpbis/trac/ticket/33</a>&gt;: "TRACE security considerations"
     2541         </li>
     2542         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/110">http://tools.ietf.org/wg/httpbis/trac/ticket/110</a>&gt;: "Clarify rules for determining what entities a response carries"
    25132543         </li>
    25142544         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/140">http://tools.ietf.org/wg/httpbis/trac/ticket/140</a>&gt;: "update note citing RFC 1945 and 2068"
     
    27282758                     </ul>
    27292759                  </li>
    2730                   <li class="indline1"><em>Part6</em>&nbsp;&nbsp;<a class="iref" href="#rfc.xref.Part6.1">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.2">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.3">5</a>, <a class="iref" href="#rfc.xref.Part6.4">5</a>, <a class="iref" href="#rfc.xref.Part6.5">7.3</a>, <a class="iref" href="#Part6"><b>13.1</b></a><ul class="ind">
     2760                  <li class="indline1"><em>Part6</em>&nbsp;&nbsp;<a class="iref" href="#rfc.xref.Part6.1">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.2">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.3">5</a>, <a class="iref" href="#rfc.xref.Part6.4">5</a>, <a class="iref" href="#rfc.xref.Part6.5">6.1</a>, <a class="iref" href="#rfc.xref.Part6.6">7.3</a>, <a class="iref" href="#Part6"><b>13.1</b></a><ul class="ind">
     2761                        <li class="indline1"><em>Section 2.7</em>&nbsp;&nbsp;<a class="iref" href="#rfc.xref.Part6.5">6.1</a></li>
    27312762                        <li class="indline1"><em>Section 3.1</em>&nbsp;&nbsp;<a class="iref" href="#rfc.xref.Part6.1">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.3">5</a></li>
    27322763                        <li class="indline1"><em>Section 3.5</em>&nbsp;&nbsp;<a class="iref" href="#rfc.xref.Part6.2">1.2.2</a>, <a class="iref" href="#rfc.xref.Part6.4">5</a></li>
Note: See TracChangeset for help on using the changeset viewer.