<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!--<!DOCTYPE rfc SYSTEM "rfc2629.dtd">-->
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc-ext parse-xml-in-artwork="yes"?>

<rfc xmlns:x='http://purl.org/net/xml2rfc/ext' xmlns:ed="http://greenbytes.de/2002/rfcedit" ipr="full2026" docName="draft-ietf-webdav-redirectref-protocol-04" category="std">
  <x:link rel="up" href="http://greenbytes.de/tech/webdav/#draft-ietf-webdav-redirectref-protocol"/>
  <x:link rel="next" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-05.html"/>
  <x:link rel="prev" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-03.html"/>
  <x:link rel="last" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-latest.html"/>
  <x:link rel="Bookmark" title="IETF WEBDAV Working Group" href="http://ftp.ics.uci.edu/pub/ietf/webdav/"/>
  <x:link rel="Alternate" title="(latest)" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-latest.html"/>
  <x:link rel="Alternate" title="draft 13" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-13.html"/>
  <x:link rel="Alternate" title="draft 12" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-12.html"/>
  <x:link rel="Alternate" title="draft 11" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-11.html"/>
  <x:link rel="Alternate" title="draft 10" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-10.html"/>
  <x:link rel="Alternate" title="draft 09" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-09.html"/>
  <x:link rel="Alternate" title="draft 08" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-08.html"/>
  <x:link rel="Alternate" title="draft 07" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-07.html"/>
  <x:link rel="Alternate" title="draft 06" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-06.html"/>
  <x:link rel="Alternate" title="draft 05" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-05.html"/>
  <x:link rel="Alternate" title="draft 04" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-04.html"/>
  <x:link rel="Alternate" title="draft 03" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-03.html"/>
  <x:link rel="Alternate" title="draft 02 (expired 1999 draft)" href="http://greenbytes.de/tech/webdav/draft-ietf-webdav-redirectref-protocol-02.html"/>
  <x:link rel="Alternate" title="RFC4437" href="http://greenbytes.de/tech/webdav/rfc4437.html"/>
  <front>
    <title>WebDAV Redirect Reference Resources</title>
    <author initials="J." surname="Slein" fullname="J. Slein">
      <organization abbrev="Xerox">Xerox Corporation</organization>
      <address>
        <postal>
          <street>800 Phillips Road, 105-50C</street>
          <city>Webster</city><region>NY</region><code>14580</code>
        </postal>
        <email>jslein@crt.xerox.com</email>	
      </address>
		</author>
    <author initials="J." surname="Whitehead" fullname="Jim Whitehead">
      <organization abbrev="U.C. Santa Cruz">UC Santa Cruz, Dept. of Computer Science</organization>
      <address>
        <postal>
          <street>1156 High Street</street>
          <city>Santa Cruz</city>
          <region>CA</region>
          <code>95064</code>
          <country>US</country>
        </postal>
        <email>ejw@cse.ucsc.edu</email>
      </address>
    </author>
    <author initials="J." surname="Davis" fullname="J. Davis">
      <organization abbrev="CourseNet">CourseNet Systems</organization>
      <address>
        <postal>
          <street>170 Capp Street</street>
          <city>San Francisco</city><region>CA</region><code>94110</code>
        </postal>
        <email>jrd3@alum.mit.edu</email>
      </address>
    </author>
    <author initials="G." surname="Clemm" fullname="G. Clemm">
      <organization abbrev="Rational">Rational Software Corporation</organization>
      <address>
        <postal>
          <street>20 Maguire Road</street>
          <city>Lexington</city><region>MA</region><code>02173-3104</code>
        </postal>
        <email>geoffrey.clemm@us.ibm.com</email>
      </address>
    </author>
    <author initials="C." surname="Fay" fullname="C. Fay">
      <organization abbrev="FileNet">FileNet Corporation</organization>
      <address>
        <postal>
          <street>3565 Harbor Boulevard</street>
          <city>Costa Mesa</city><region>CA</region><code>92626-1420</code>
        </postal>
        <email>cfay@filenet.com</email>
      </address>
    </author>
    <author initials="J." surname="Crawford" fullname="J. Crawford">
      <organization abbrev="IBM">IBM Research</organization>
      <address>
        <postal>
          <street>P.O. Box 704</street>
          <city>Yorktown Heights</city><region>NY</region><code>10598</code>
        </postal>
        <email>ccjason@us.ibm.com</email>
      </address>
    </author>
    <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke" role="editor">
      <organization abbrev="greenbytes">greenbytes GmbH</organization>
      <address>
        <postal>
          <street>Salzmannstrasse 152</street>
          <city>Muenster</city><region>NW</region><code>48159</code>
          <country>Germany</country>
        </postal>
        <phone>+49 251 2807760</phone>
        <facsimile>+49 251 2807761</facsimile>
       <email>julian.reschke@greenbytes.de</email>
        <uri>http://greenbytes.de/tech/webdav/</uri>
      </address>
    </author>

    <date month="September" year="2003" day="10"/>
    <workgroup>WEBDAV Working Group</workgroup>

    <abstract>
<ed:replace datetime="2003-07-27" ed:resolves="lc-34-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>
  This is one of a pair of specifications that extend the WebDAV 
  Distributed Authoring Protocol to enable clients to create new access 
  paths to existing resources.  The two protocol extensions have very 
  different characteristics that make them useful for different sorts of 
  applications.
</t>
</ed:del></ed:replace>
<ed:issue name="lc-85-301" type="change" status="open">
  <ed:item date="2000-01-03" entered-by="ejw@cse.ucsc.edu">
    Support creation of other than 302 redirects, especially 301.
  </ed:item>
</ed:issue>
<t>
  <ed:replace datetime="2003-07-27" ed:resolves="lc-34-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>The present</ed:del><ed:ins>This</ed:ins></ed:replace> specification defines redirect reference resources.  A 
  redirect reference resource is a resource whose default response is an 
  HTTP/1.1 302 (Found) status code, redirecting the client to a different 
  resource, the target resource.  A redirect reference makes it possible 
  to access the target resource indirectly, through any URI mapped to the 
  redirect reference resource.  There are no integrity guarantees 
  associated with redirect reference resources.
</t>
<ed:issue name="lc-07-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Abstract should discuss only redirect references, not bindings. Expand discussion of redirect references.
  </ed:item>
  <ed:resolution>
    Abstract will discuss only redirect references.
    See also issue 34.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-08-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Get rid of cross-references to the binding spec: in the abstract, in the introduction, in the definition of Reference Resource.
  </ed:item>
  <ed:resolution>
    Cross-references to bindings will be removed.
    See also issue 34.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-34-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0286.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    NoBind: Remove all cross-references to the binding spec. Prefer also removing all mention of bindings.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Agreed. See also issues 7, 8, 14
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-83-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    References:
    Get rid of the reference to the bindings spec.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Agreed.
  </ed:resolution>
</ed:issue>
<ed:replace datetime="2003-07-27" ed:resolves="lc-34-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>
  The related specification <xref target="B"/>, defines bindings, and the BIND 
  method for creating them.  Creating a new binding to a resource 
  indirectly creates one or more new URIs mapped to that resource, which 
  can then be used to access it.  Servers are required to insure the 
  integrity of any bindings that they allow to be created.
</t>
</ed:del></ed:replace>
<t>
  Distribution of this document is unlimited. Please send comments to the 
  Distributed Authoring and Versioning (WebDAV) working group at <eref target="mailto:w3c-dist-auth@w3.org">w3c-dist-auth@w3.org</eref>, which may be joined by sending a message with subject 
  "subscribe" to <eref target="mailto:w3c-dist-auth-request@w3.org?subject=subscribe">w3c-dist-auth-request@w3.org</eref>.
</t>
<t>
  Discussions of the WEBDAV working group are archived at URL: 
  <eref target="http://lists.w3.org/Archives/Public/w3c-dist-auth/">http://lists.w3.org/Archives/Public/w3c-dist-auth/</eref>.               
</t> 
</abstract>
</front>

	<middle>


<section title="Introduction">
<ed:issue name="lc-12-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    First 3 paragraphs of Introduction are identical to those in binding spec. Make sure that any changes made there are also incorporated here.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    These paragraphs will change as necessary to make the redirect spec completely independent of the rest of WebDAV.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-35-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0287.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    ReallyNoBind: Remove paras. 6 and 8 from Intro.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Agreed. See also issue 14.
  </ed:resolution>
</ed:issue>
<t>
  This is one of a pair of specifications that extend the WebDAV 
  Distributed Authoring Protocol to enable clients to create new access 
  paths to existing resources.  This capability is useful for several 
  reasons:
</t>
<ed:issue name="lc-38-not-hierarchical" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0289.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Not Hierarchical:
    The first sentence of the second paragraph of the introduction of the redirect spec asserts that the URIs of WebDAV compliant resources match to collections. The WebDAV standard makes no such requirement. I therefore move that this sentence be stricken.
  </ed:item>
  <ed:resolution>
    State the more general HTTP rationale first (alternative names for the same resource), then introduce the collection hierarchy rationale, which applies only if you are in a WebDAV-compliant space.
  </ed:resolution>
</ed:issue>
<t>
  URIs of WebDAV-compliant resources are hierarchical and correspond to a 
  hierarchy of collections in resource space.  The WebDAV Distributed 
  Authoring Protocol makes it possible to organize these resources into 
  hierarchies, placing them into groupings, known as collections, which 
  are more easily browsed and manipulated than a single flat collection.  
  However, hierarchies require categorization decisions that locate 
  resources at a single location in the hierarchy, a drawback when a 
  resource has multiple valid categories. For example, in a hierarchy of 
  vehicle descriptions containing collections for cars and boats, a 
  description of a combination car/boat vehicle could belong in either 
  collection. Ideally, the description should be accessible from both. 
  Allowing clients to create new URIs that access the existing resource 
  lets them put that resource into multiple collections.
</t>
<ed:issue name="lc-36-server" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0285.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Servers: Replace "server" with "unrelated system" throughout.
  </ed:item>
  <ed:resolution>
    Try replacing "server" with "host" in some contexts, rephrasing in passive voice in others.
    See also issue 40.
  </ed:resolution>
</ed:issue>
<t>
  Hierarchies also make resource sharing more difficult, since resources 
  that have utility across many collections are still forced into a single 
  collection. For example, the mathematics department at one university 
  might create a collection of information on fractals that contains 
  bindings to some local resources, but also provides access to some 
  resources at other universities.  For many reasons, it may be 
  undesirable to make physical copies of the shared resources on the local 
  server: to conserve disk space, to respect copyright constraints, or to 
  make any changes in the shared resources visible automatically. Being 
  able to create new access paths to existing resources in other 
  collections or even on other servers is useful for this sort of case.
</t>
<ed:issue name="lc-33-forwarding" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0284.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Forwarding: Replace "forward" with "redirect" throughout.
  </ed:item>
  <ed:resolution>
    Use "redirect" for the behavior redirect resources do exhibit. Use "forward" for the contrasting behavior (passing a method on to the target with no client action needed). Define these two terms. See also issue 40.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-56-notjusthttp" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0306.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Make it clear in examples and text that the redirection URI could be non-HTTP.
  </ed:item>
  <ed:resolution>
    We agree that it is possible to create redirect references to non-HTTP resources.
    Add example.
  </ed:resolution>
</ed:issue>
<t>
  The redirect reference resources defined here provide a mechanism for 
  creating alternative access paths to existing resources.  A redirect 
  reference resource is a resource in one collection whose purpose is to 
  forward requests to another resource (its target), possibly in a 
  different collection.  In this way, it allows clients to submit requests 
  to the target resource from another collection.  It redirects most 
  requests to the target resource using the HTTP 302 (Found) status code, 
  thereby providing a form of mediated access to the target resource.
</t>
<ed:replace datetime="2003-09-10" ed:resolves="lc-08-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>
  The companion specification <xref target="B"/>, defines the BIND method, a 
  different mechanism for allowing clients to create alternative access 
  paths to existing WebDAV-compliant resources. The BIND method lets 
  clients associate a new URI with an existing WebDAV resource.  This URI 
  can then be used to submit requests to the resource.  Since URIs of 
  WebDAV-compliant resources are hierarchical, and correspond to a 
  hierarchy of collections in resource space, the BIND method also has the 
  effect of adding the resource to a collection.  As new URIs are 
  associated with the resource, it appears in additional collections.
</t>
<t>
  Redirect references and bindings have very different characteristics:
</t>
</ed:del></ed:replace>
<ed:issue name="lc-01-body" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0188.html">
  <ed:item date="2000-01-26" entered-by="joe@orton.demon.co.uk">
    Entity Bodies for Redirect References:
    Clarify: Are there 2 resources, one that redirects and one that responds with its own entity body?
    Clarify: What is the effect of PUT for a URI that currently maps to a redirect reference?
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Redirect resource MUST NOT have a body.
    See also issue last call issue 23.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-37-integrity" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0288.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Integrity: Intro, para 7 "Servers are not required to enforce the integrity of redirect references." Integrity is not defined. Replace with something clearer.
  </ed:item>
  <ed:resolution>
    Rewrite to say that the server MUST NOT update the target
    See also issue 6.
  </ed:resolution>
</ed:issue>
<t>
  A redirect reference is a resource, and so can have properties and a 
  body of its own.  Properties of a redirect reference resource can 
  contain such information as who created the reference, when, and why.  
  Since redirect reference resources are implemented using HTTP 302 
  responses, it generally takes two round trips to submit a request to the 
  intended resource.  Servers are not required to enforce the integrity of 
  redirect references.  Redirect references work equally well for local 
  resources and for resources that reside on a different server from the 
  reference.
</t>
<ed:issue name="lc-14-bind" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Limit the discussion of bindings to just what is needed to understand the differences from redirect references. Maybe the paragraph in the Intro that starts "By contrast, a BIND request . . ." is all that is needed.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Get rid of discussion of bindings altogether.
    See also issue 34, 35.
  </ed:resolution>
</ed:issue>
<ed:replace datetime="2003-09-10" ed:resolves="lc-08-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>
  By contrast, a BIND request does not create a new resource, but simply 
  makes available a new URI for submitting requests to an existing 
  resource.  The new URI is indistinguishable from any other URI when 
  submitting a request to a resource.  Only one round trip is needed to 
  submit a request to the intended target.  Servers are required to 
  enforce the integrity of the relationships between the new URIs and the 
  resources associated with them.  Consequently, it may be very costly for 
  servers to support BIND requests that cross server boundaries.
</t>
</ed:del></ed:replace>
<t>
  The remainder of this document is structured as follows: <xref target="terminology"/>
  defines terms that will be used throughout the specification.  <xref target="overview"/>
  provides an overview of redirect reference resources.  <xref target="creating"/>
  discusses how to create a redirect reference resource.  <xref target="operations.on.redirect.reference.resources"/>
  defines the semantics of existing methods when applied to redirect 
  reference resources, and <xref target="operations.on.collections.that.contain.redirect.reference.resources"/> discusses their semantics when 
  applied to collections that contain redirect reference resources.   
  Sections <xref target="operations.on.targets.of.redirect.reference.resources" format="counter"/>
  through <xref target="redirect.references.to.collections" format="counter"/> discuss several other issues raised by the 
  existence of redirect reference resources.  Sections <xref target="headers" format="counter"/> through
  <xref target="extensions.to.response.element" format="counter"/> 
  define the new headers, properties, and XML elements required to support 
  redirect reference resources.  Section <xref target="capability.discovery" format="counter"/> discusses capability 
  discovery.  Sections <xref target="security.considerations" format="counter"/>
  through <xref target="iana.considerations" format="counter"/> present the security, 
  internationalization, and IANA concerns raised by this specification.  
  The remaining sections provide a variety of supporting information.
</t>
</section>
    


<section title="Notational Conventions">
<t>
  Since this document describes a set of extensions to the WebDAV 
  Distributed Authoring Protocol <xref target="RFC2518"/>, itself an extension to the 
  HTTP/1.1 protocol, the augmented BNF used here to describe protocol 
  elements is exactly the same as described in Section 2.1 of <xref target="RFC2616"/>.  
  Since this augmented BNF uses the basic production rules provided in 
  Section 2.2 of <xref target="RFC2616"/>, these rules apply to this document as well.
</t>
<t>
  The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
  "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
  document are to be interpreted as described in <xref target="RFC2119"/>.
</t>
</section>



<section title="Terminology" anchor="terminology">
<t>
  The terminology used here follows and extends that in the WebDAV 
  Distributed Authoring Protocol specification <xref target="RFC2518"/>. Definitions of 
  the terms resource, Uniform Resource Identifier (URI), and Uniform 
  Resource Locator (URL) are provided in <xref target="RFC2396"/>.
</t>
<ed:issue name="lc-15-direct-ref" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
	  Don't define Direct Reference Resource, since direct references are out of scope. (If you do keep the definition, say explicitly that a direct reference resource is a type of reference resource.)
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Remove definition of Direct Reference Resource.
    See also issue 39.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-39-no-reference-or-direct-resource" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0290.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    NoReferenceOrDirectResource:
    Remove the definitions of "Reference" and "Direct Reference Resource."
    Change the definition of "Redirect Reference Resource" to be:
    Redirect Resource: A resource created to redirect all requests made to it, using 302 (Found), to a defined target resource.
  </ed:item>
  <ed:item date="2003-07-27" entered-by="julian.reschke@greenbytes.de">
    (Rename from "redirect reference resource" to "redirect resource" delayed for now).
  </ed:item>
  <ed:resolution datetime="2003-07-27">
    Agreed.
    See also issue 15.
  </ed:resolution>
</ed:issue>
<ed:issue name="3-terminology-redirectref" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0290.html">
  <ed:item date="2003-07-27" entered-by="julian.reschke@greenbytes.de">
    Consider global rename of "redirect reference resource" to "redirect resource".
  </ed:item>
</ed:issue>
<ed:replace datetime="2003-07-27" ed:resolves="lc-39-no-reference-or-direct-resource" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>Reference Resource
  <list><t>
   A resource whose purpose is to forward requests to another 
   resource.  Reference resources are an alternative mechanism to 
   bindings (defined in <xref target="B"/>) for allowing clients to create multiple 
   URIs that can be used to submit requests to the same resource.</t>
  </list></t>
</ed:del></ed:replace>
<t>Redirect Reference Resource
<ed:replace datetime="2003-07-27" ed:resolves="lc-39-no-reference-or-direct-resource" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
  <list><t>
   A resource that allows clients to forward requests to another 
   resource using the HTTP 1.1 302 (Found) response mechanism.  The 
   client is aware that this type of reference resource is mediating 
   between it and the target resource.</t>
  </list>
</ed:del><ed:ins>
  <list><t>
    A resource created to redirect all requests made to it, using 302 (Found),
    to a defined target resource.
  </t></list>
</ed:ins></ed:replace>
</t>
<ed:replace datetime="2003-07-27" ed:resolves="lc-39-no-reference-or-direct-resource" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>Redirect Direct Reference Resource
  <list><t>
   Direct Reference Resources are out of scope for this 
   specification, but are defined here for contrast with redirect 
   reference resources.   A direct reference resource automatically 
   forwards requests to another resource, in a way that is 
   transparent to the client.</t>
  </list></t>
</ed:del></ed:replace>
<t>Non-Reference Resource
  <list><t>
   A resource that is not a reference to another resource.</t>
  </list></t>
<t>Target Resource
  <list><t>
   The resource to which requests are forwarded by a reference 
   resource.</t>
  </list></t>
</section>

<section title="Overview of Redirect Reference Resources" anchor="overview">
<t>
  For all operations submitted to a redirect reference resource, the 
  default response is a 302 (Found), accompanied by the Redirect-Ref 
  header (defined in <xref target="header.redirect-ref"/> below) and the Location header set to 
  the URI of the target resource.  With this information, the client can 
  resubmit the request to the URI of the target resource.
</t>

<ed:issue name="lc-40-direct" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0291.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Assorted changes to Section 4, para 2 to get rid of the word "forward" and the word "server" and remove comparison with direct references.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    See also issue 33 (forward).
    See also issue 36 (server).
    Remove discussion of direct references.
  </ed:resolution>
</ed:issue>
<t>
  A redirect reference resource never automatically forwards requests to 
  its target resource.  <ed:replace datetime="2003-07-27" ed:resolves="lc-40-direct" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>It is this characteristic that distinguishes 
  redirect reference resource from direct reference resources and from 
  bindings.  It is also what helps to insure that redirect reference resources 
  will be simple to implement and that cross-server references will be 
  possible.  If the redirect reference resource were required to forward 
  requests automatically, the server would need proxy capabilities in 
  order to support cross-server references.</ed:del><ed:ins>
  </ed:ins>Redirect resources
  bring the same benefits as links in HTML documents. They can be created and
  maintained without the involvement or even knowledge of their target
  resource. This reduces the cost of linking between resources."</ed:replace>
</t>

<ed:issue name="lc-43-webdav" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0294.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Get rid of the DAV:reftarget property.
  </ed:item>
  <ed:resolution>
    DAV:reftarget is readonly and is present only for redirect references that are also WebDAV resources.
    We'll also have a method for setting target; Redirect-Ref header (returned on all 302 responses) will have the target as its value.
    See also issue 6, 17, 50.
  </ed:resolution>
</ed:issue>
<t>
  If the client is aware that it is operating on a redirect reference 
  resource, it can resolve the reference by retrieving the reference 
  resource's DAV:reftarget property (defined in <xref target="reftarget.property"/> below), whose 
  value contains the URI of the target resource.  It can then submit 
  requests to the target resource. 
</t>
<t>
  A redirect reference resource is a new type of resource. To distinguish 
  redirect reference resources from non-reference resources, a new value 
  of the DAV:resourcetype property (defined in <xref target="RFC2518"/>), DAV:redirectref, 
  is defined in <xref target="redirectref.xml.element"/> below.
</t>
<ed:issue name="lc-19-direct-ref" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 4, para 5 and Section 6, para 3 discussions of the Apply-to-Redirect-Ref header make it sound as if we are specifying direct reference behavior.
  </ed:item>
  <ed:resolution>
    Change these passages so that the contrast is between applying the method to the redirect reference and responding with a 302.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-45-apply-to-rr" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0295.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Suggested replacement text for this paragraph, which briefly introduces Apply-To-Redirect-Ref.
    Includes a note that even with this header, the response may be a 302.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    See issue 19 for replacement text.
    Disagree. Redirect reference will never respond to Apply-To-RR with 302.
  </ed:resolution>
</ed:issue>
<t>
  Since a redirect reference resource is a resource, it can have its own 
  properties and body, and methods can be applied to the reference 
  resource as well as to its target resource.  The Apply-To-Redirect-Ref 
  request header (defined in <xref target="header.apply-to-redirect-ref"/> below) is provided so that 
  referencing-aware clients can control whether an operation is applied to 
  the redirect reference resource or to its target resource.  The Apply-To-Redirect-Ref
  header can be used with most requests to redirect 
  reference resources.  This header is particularly useful with PROPFIND, 
  to retrieve the reference resource's own properties.
</t>
</section>

<section title="Creating a Redirect Reference Resource" anchor="creating">
<ed:issue name="lc-04-standard-data-container" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0189.html">
  <ed:item date="2000-01-26" entered-by="joe@orton.demon.co.uk">
    "Standard data container" needs to be defined in the context of MKRESOURCE
  </ed:item>
  <ed:resolution>
    Not relevant once we switch to MKREF.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-05-standard-data-container" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0189.html">
  <ed:item date="2000-01-26" entered-by="joe@orton.demon.co.uk">
    Inconsistency about whether a "standard data container" can be created with MKRESOURCE or not.
  </ed:item>
  <ed:resolution>
    Not relevant once we switch to MKREF.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-20-intro-mkresource" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 5: Start with "The new MKRESOURCE method" to make it clear that it is being introduced for the first time here.
  </ed:item>
  <ed:resolution>
    Say "The MKREF method defined normatively here . . ."
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-22-coll" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Inconsistency about whether collections can be created with MKRESOURCE.
  </ed:item>
  <ed:resolution>
    Not relevant for MKREF.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-25-atomic" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Is MKRESOURCE atomic as viewed by a client? Can another client access the new resource's properties before they have been fully initialized?
    Maybe the MKRESOURCE request should let the client ask for it to be atomic.
  </ed:item>
  <ed:resolution>
    No longer relevant once we switch to MKREF with no request body.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-41-no-webdav" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0292.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Make redirect references independent of the rest of WebDAV. The creation method for redirect references shouldn't require an XML request body.
  </ed:item>
  <ed:resolution>
    We will make redirect references independent of the rest of WebDAV.
    MKREF will not have an XML request body.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-42-no-webdav" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0293.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Use a creation method that creates only redirect references.
    The MKRESOURCE method hinders experiment because a user of a server who wishes to add support for the creation of a new resource type can't simply throw in another Apache module and allow it to provide the code for the new resource type. They have to find the code used for MKRESOURCE and change it to support the new resource type. 
  </ed:item>
  <ed:resolution>
    We will replace MKRESOURCE with MKREF, which creates only redirect reference resources.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-58-update" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0308.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    There needs to be a way to update the target of a redirect reference.
  </ed:item>
  <ed:resolution>
    Agreed.
    See also issues 6, 43.
  </ed:resolution>
</ed:issue>
<t>
  The MKRESOURCE method is used to create new redirect reference 
  resources.  As defined in <xref target="MKRESOURCE"/>, MKRESOURCE can be used to create 
  a resource of any type other than standard data containers and 
  collections.  In order to create a redirect reference resource using 
  MKRESOURCE, the values of two properties must be set in the body of the 
  MKRESOURCE request.  The value of DAV:resourcetype MUST be set to 
  DAV:redirectref, a new value of DAV:resourcetype defined in <xref target="redirectref.xml.element"/>.
  The value of DAV:reftarget MUST be set to the URI of the target 
  resource.
</t>


<t>
  Used in this way, the MKRESOURCE method creates a redirect reference 
  resource whose target is identified by the DAV:reftarget property.
</t>

<section title="MKRESOURCE" anchor="MKRESOURCE">
<t>
  The MKRESOURCE method requests the creation of a resource and 
  initialization of its properties.  It allows resources other than 
  standard data containers and collections to be created and their 
  properties initialized in one atomic operation.
</t>
<t>
Preconditions:
<list><t>
  A resource MUST NOT exist at the Request-URI.
</t></list>
Request Marshalling:
<list><t>
  The location of the new resource to be created is specified by the 
  Request-URI. 
</t>
<t>
  The request body of the MKRESOURCE method MUST consist of the 
  DAV:propertyupdate XML element defined in Section 12.13 of <xref target="RFC2518"/>.
</t></list>
Postconditions:
<list><t>
  If the response status code is 201, a new resource exists at the 
  Request-URI.
</t>
<ed:issue name="lc-01A-body" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0188.html">
  <ed:item date="2000-01-26" entered-by="joe@orton.demon.co.uk">
    In the definition of MKRESOURCE, "Body" needs to be defined or else terminology changed.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    We will use MKREF instead of MKRESOURCE.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-23-body" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 5.1: Get rid of the statement that the body of the resource is empty (PostConditions). It would be good if the response to GET included a response body that could be shown to a user by a client that doesn't do automatic redirection.
    There is a related problem in Section 6 on PUT. It is wrong to assume that what is PUT to a resource is what GET will return. In Section 6, say "A PUT with Apply-To-RR MAY contain a request body. The semantics of the request body is out of scope for this specification..."
    Also fix the discussion of example 6.2.
  </ed:item>
  <ed:resolution>
    Redirect references cannot have bodies.
    GET with Apply-To-RR MUST fail with 403.
    PUT with Apply-To-RR MUST fail with 403.
    See also issue 1.
  </ed:resolution>
</ed:issue>
<t>
  The body of the new resource is empty.
</t>
<ed:issue name="lc-24-properties" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 5.1: Replace the sentence "The properties of the new resource are as specified by the DAV:propertyupdate request body, using PROPPATCH semantics" with the following:
    "The MKRESOURCE request MAY contain a DAV:propertyupdate request body to initialize resource properties. Herein, the semantics is the same as when sending a MKRESOURCE request without a request body, followed by a PROPPATCH with the DAV:propertyupdate request body."
  </ed:item>
  <ed:resolution>
    No longer relevant once we switch to MKREF with no request body.
  </ed:resolution>
</ed:issue>
<t>
  The properties of the new resource are as specified by the 
  DAV:propertyupdate request body, using PROPPATCH semantics. If the
  DAV:propertyupdate does not specify a DAV:resourcetype, the resource 
  will be a standard data container.
</t>

<t>
  If the response status code is not 201, then a new resource is not 
  created at the Request-URI, and any existing resource at the Request-URI 
  is unaffected.
</t></list>
  Response Marshalling:

<list><t>
  Responses from a MKRESOURCE request MUST NOT be cached, as MKRESOURCE 
  has non-idempotent semantics.
</t>
<t>
  The following status codes can be expected in responses to MKRESOURCE:
</t>

<ed:issue name="lc-47-207" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0297.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    In line with his wish to get rid of the request message body of MKRESOURCE, 207 would not be an appropriate response code. 
    The description of 409 might lead someone to believe that you can't create redirect references outside of WebDAV namespaces. Suggests a different description.
  </ed:item>
  <ed:resolution>
    No longer relevant - MKREF can't get a 207 response.
    Revise to make it clear that the first condition will only occur in WebDAV-compliant namespaces. 
  </ed:resolution>
</ed:issue>
<t>
  201 (Created): The new resource was successfully created.
</t>
<t>
  207 (Multi-Status): This response is generated if an error was 
  encountered while initializing the properties of the resource, in which 
  case the response is as defined in Section 8.2.1 of <xref target="RFC2518"/>.
</t>
<t>
  403 (Forbidden): The server does not allow the creation of the requested 
  resource type at the requested location, or the parent collection of the 
  Request-URI exists but cannot accept members.
</t>
<t>
  409 (Conflict): A resource cannot be created at the Request-URI because 
  the parent collection for the resource does not exist, or because there 
  is already a resource at that request-URL.
</t>
<t>
  423 (Locked): The Request-URI is locked, and the lock token was not 
  passed with the request.
</t>
<t>
  507 (Insufficient Storage): The server does not have sufficient space to 
  record the state of the resource.
</t></list></t>
</section>

<section title="Example: Creating a Redirect Reference Resource with MKRESOURCE">

<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
MKRESOURCE /~whitehead/dav/spec08.ref HTTP/1.1
Host: www.ics.uci.edu
Content-Type: text/xml; charset="utf-8"
Content-Length: xxx

&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;D:propertyupdate xmlns:D="DAV:"&gt;
  &lt;D:set&gt;
    &lt;D:prop&gt;
      &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
    &lt;D:reftarget&gt;
      &lt;D:href&gt;/i-d/draft-webdav-protocol-08.txt&lt;/D:href&gt;
    &lt;/D:reftarget&gt;
  &lt;/D:prop&gt;
  &lt;/D:set&gt;
&lt;/D:propertyupdate&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 201 Created
</artwork>
</figure>
<t>
  This request resulted in the creation of a new redirect reference 
  resource at www.ics.uci.edu/~whitehead/dav/spec08.ref, which points to 
  the resource identified by the DAV:reftarget property. In this example, 
  the target resource is identified by the URI http://www.ics.uci.edu/i-d/draft-webdav-protocol-08.txt.
  The redirect reference resource's DAV:resourcetype property is set to DAV:redirectref.
</t>
</section>
</section>

<section title="Operations on Redirect Reference Resources" anchor="operations.on.redirect.reference.resources">

<ed:issue name="lc-48-s6" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0298.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Replace all of section 6 with just this:
    A redirect resource, upon receiving a request without an Apply-To-Redirect-Ref header, MUST respond with a 302 (Found) response. The 302 (Found) response MUST include a location header identifying the target and a Redirect-Ref header. 
    If a redirect resource receives a request with an Apply-To-Redirect-Ref header then the redirect reference resource MUST apply the method to itself rather than blindly returning a 302 (Found) response.
  </ed:item>
  <ed:resolution>
    Keep a summary along the lines of Yaron's proposal (don't use the word "blindly").
    Keep the bullets detailing the headers to be returned.
    Delete the rest, including the examples.
    See also issue 28, 29, 30, 31, 32.
  </ed:resolution>
</ed:issue>
<t>
  Although non-referencing-aware clients cannot create reference 
  resources, they should be able to submit requests through the reference 
  resources created by reference-aware WebDAV clients.  They should be 
  able to follow any references to their targets.  To make this possible, 
  a server that receives any request made via a redirect reference 
  resource MUST return a 302 (Found) status code, unless the request 
  includes an Apply-To-Redirect-Ref header. The client and server MUST 
  follow <xref target="RFC2616"/> Section 10.3.3 "302 Found," but with these additional 
  rules: 
</t>
<t>
<list style="symbols">
<t>
  The Location response header MUST contain an absolute URI that 
  identifies the target of the reference resource.
</t>
<t>
  The response MUST include the Redirect-Ref header.  This header 
  allows reference-aware WebDAV clients to recognize the resource as a 
  reference resource and understand the reason for the redirection.
</t>
</list>
</t>
<ed:issue name="lc-28-lang" type="edit" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 6: Get rid of the sentence "A reference-aware WebDAV client can act on this response in one of two ways." A client can act on the response in any way it wants.
  </ed:item>
  <ed:resolution>
    Agreed.
    See also issue 48.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-29-lang" type="edit" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 6, para 4: Obvious, doesn't need to be stated. Maybe note in an example.  </ed:item>
  <ed:resolution>
    Agreed.
    See also issue 48.
  </ed:resolution>
</ed:issue>
<t>
  A reference-aware WebDAV client can act on this response in one of two 
  ways.  It can, like a non-referencing client, resubmit the request to 
  the URI in the Location header in order to operate on the target 
  resource.  Alternatively, it can resubmit the request to the URI of the 
  redirect reference resource with the Apply-To-Redirect-Ref header in 
  order to operate on the reference resource itself.  If the Apply-To-Redirect-Ref
  header is present, the request MUST be applied to the 
  reference resource itself, and a 302 response MUST NOT be returned.
</t>
<t>
  A reference-aware client may know before submitting its request that the 
  Request-URI identifies a redirect reference resource. In this case, if 
  the client wants to apply the method to the reference resource, it can 
  save the round trip caused by the 302 response by using an Apply-To-Redirect-Ref
  header in its initial request to the URI.
</t>
<t>
  A few methods need additional explanation:
</t>

<t>
  The Apply-To-Redirect-Ref header can be used with GET or HEAD to 
  retrieve the entity headers of a redirect reference resource.  When 
  Apply-To-Redirect-Ref is used with GET or HEAD, the Redirect-Ref entity 
  header MUST be returned.
</t>
<t>
  A redirect reference resource MAY have a body, though none is defined 
  for it in this specification.  The PUT method can be used, with Apply-To-Redirect-Ref,
  to create or replace the body of a redirect reference 
  resource.
</t>
<ed:issue name="lc-31-MKCOL" type="edit" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0266.html">
  <ed:item date="2000-02-07" entered-by="reuterj@ira.uka.de">
    Section 6, para on MKRESOURCE and MKCOL is obvious and doesn't need to be stated. Maybe show in an example.  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Agreed.
    See also issue 48.
  </ed:resolution>
</ed:issue>
<ed:replace datetime="2003-09-10" ed:resolves="lc-31-MKCOL" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<t>
  Since MKCOL and MKRESOURCE fail when applied to existing resources, if 
  the client attempts to resubmit the request to the target resource, the 
  request MUST fail (unless the reference resource is a dangling 
  reference).  Similarly, if the client attempts to resubmit the request 
  to the reference resource with an Apply-To-Redirect-Ref header, the 
  request MUST fail.
</t>
</ed:del></ed:replace>


<section title="Example: GET on a Redirect Reference Resource">
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
GET /bar.html HTTP/1.1
Host: www.foo.com 
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 302 Found
Location: http://www.svr.com/Internet/xxspec08.html
Redirect-Ref: 
</artwork>
</figure>
<t>
  Since /bar.html is a redirect reference resource and the Apply-To-Redirect-Ref
  header is not included in the request, the response is a 
  302 (Found).  The Redirect-Ref header informs a reference-aware client 
  that this is not an ordinary HTTP 1.1 redirect, but is a redirect 
  reference resource.  The URI of the target resource is provided in the 
  Location header so that the client can resubmit the request to the 
  target resource.
</t>
</section>

<section title="Example: PUT on a Redirect Reference Resource with Apply-To-Redirect-Ref">
<ed:issue name="lc-49-put" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0299.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Remove the last sentence of Example 6.2, which says that PUT replaces the reference with a different resource.
  </ed:item>
  <ed:resolution>
    No longer relevant. Deleted this example in response to issue 48.
  </ed:resolution>
</ed:issue>
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
PUT /bar.html HTTP/1.1 
Host: www.foo.com
Apply-To-Redirect-Ref: 
Content-Type: text/xml; charset="utf-8" 
Content-Length: xxxx

. . . some content . . .
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 200 OK 
</artwork>
</figure>
<t>
  Although /bar.html is a redirect reference resource, the presence of the 
  Apply-To-Redirect-Ref header prevents a 302 response, and instead causes 
  the request to be applied to the reference resource.  The result in this 
  case is that the reference resource is replaced by a non-reference 
  resource having the content submitted with the request.
</t>
</section>

<section title="Example: PROPPATCH on a Redirect Reference Resource">
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
PROPPATCH /bar.html HTTP/1.1 
Host: www.foo.com 
Content-Type: text/xml; charset="utf-8" 
Content-Length: xxxx 

&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;D:propertyupdate xmlns:D="DAV:"
xmlns:Z="http://www.w3.com/standards/z39.50/"&gt;
  &lt;D:set&gt;
    &lt;D:prop&gt;
      &lt;Z:authors&gt;
        &lt;Z:Author&gt;Jim Whitehead&lt;/Z:Author&gt;
        &lt;Z:Author&gt;Roy Fielding&lt;/Z:Author&gt;
      &lt;/Z:authors&gt;
    &lt;/D:prop&gt;
  &lt;/D:set&gt;
  &lt;D:remove&gt;
    &lt;D:prop&gt;
      &lt;Z:Copyright-Owner/&gt;
    &lt;/D:prop&gt;
  &lt;/D:remove&gt;
&lt;/D:propertyupdate&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 302 Found
Location: http://www.svr.com/Internet/xxspec08.html
Redirect-Ref: 
</artwork>
</figure>
<t>
  Since /bar.html is a redirect reference resource and the Apply-To-Redirect-Ref
  header is not included in the request, the response is a 
  302 (Found).  The Redirect-Ref header informs a reference-aware client 
  that this is not an ordinary HTTP 1.1 redirect, but is a redirect 
  reference resource.  The URI of the target resource is provided in the 
  Location header so that the client can resubmit the request to the 
  target resource.
</t>
</section>
</section>

<section title="Operations on Collections That Contain Redirect Reference Resources" anchor="operations.on.collections.that.contain.redirect.reference.resources">



<ed:issue name="lc-44-pseudo" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0302.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Instead of adding an optional prop XML element to the response element in 207 responses, define a new location XML element and a new refresource XML element.
  </ed:item>
  <ed:resolution>
    Agree to define new XML elements that are not pseudo-properties.
    Disagreement about whether refresource is needed.
    See issue 61.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-61-pseudo" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 7: It doesn't make sense to ask future editors of RFC 2518 to define DAV:location with the semantics it has here.
    RFC 2518 should provide the information in the Location header somehow in multistatus responses, but not by using properties.
  </ed:item>
  <ed:resolution>
    Define an XML element for location that is not a pseudo-property.
    We'll keep the recommendation that RFC 2518 add this for 302 responses.
    See also issue 44.
  </ed:resolution>
</ed:issue>
<t>
  Consistent with the rules in <xref target="operations.on.redirect.reference.resources"/>, the response for each redirect 
  reference encountered while processing a collection MUST be a 302 
  (Found) unless a Apply-To-Redirect-Ref header is included with the 
  request.  The overall response will therefore be a 207 (Multi-Status).  
  Since a Location header and Redirect-Ref header cannot be returned for 
  each redirect reference encountered, the same information is provided 
  using properties in the response elements for those resources.  The 
  DAV:location pseudo-property and the DAV:resourcetype property MUST be 
  included with the 302 status code.  This necessitates an extension to 
  the syntax of the DAV:response element that was defined in <xref target="RFC2518"/>.  
  The extension is defined in <xref target="extensions.to.response.element"/> below.
</t>
<ed:issue name="lc-60-ex" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 7, para 3: Make it clear that these are just examples of client behavior, and are not meant to limit the client's behavior to these options.
  </ed:item>
  <ed:resolution>
    Agreed to delete this paragraph.
    Continue discussion of what information should be returned with 302 in multistatus. Just location? Also redirectref?
  </ed:resolution>
</ed:issue>
<t>
  A referencing-aware client can tell from the DAV:resourcetype property 
  that the collection contains a redirect reference resource.  The 
  DAV:location pseudo-property contains the absolute URI of the target 
  resource.  A referencing-aware client can either use the URI value of 
  the DAV:location pseudo-property to resubmit its request to the target 
  resource, or it can submit the request to the redirect reference 
  resource with Apply-To-Redirect-Ref.  
</t>
<ed:issue name="lc-62-oldclient" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 7: It's too strong to claim that non-referencing clients can't process 302 responses occurring in Multi-Status responses. They just have an extra round trip for each 302.
  </ed:item>
  <ed:resolution>
    Remove last sentence of the paragraph that recommends changes to RFC 2518.
  </ed:resolution>
</ed:issue>
<t>
  It is recommended that future editors of <xref target="RFC2518"/> define the 
  DAV:location pseudo-property in <xref target="RFC2518"/>, so that non-referencing 
  clients will also be able to use the response to operate on the target 
  resource.  (This will also enable clients to operate on traditional 
  HTTP/1.1 302 responses in Multi-Status responses.) Until then, non-referencing
  clients will not be able to process 302 responses from 
  redirect reference resources encountered while processing a collection.
</t>
<t>
  The Apply-To-Redirect-Ref header (defined in <xref target="header.apply-to-redirect-ref"/>) MAY be used 
  with any request on a collection.  If present, it will be applied to all 
  redirect reference resources encountered while processing the 
  collection.
</t>

<section title="MOVE and DELETE on Collections That Contain Redirect References">
<ed:issue name="lc-63-move" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 7.1: Is MOVE atomic from the perspective of a client?
    Agrees that there should be no 302s for member redirect references, but finds the rationale dubious.
  </ed:item>
  <ed:resolution>
    Remove 7.1.
    Reword 7.2 to avoid concerns with "poses special problems" and "due to atomicity".
  </ed:resolution>
</ed:issue>
<t>
  DELETE removes the binding that corresponds to the Request-URI.  MOVE 
  removes that binding and creates a new binding to the same resource.  In 
  cases where DELETE and MOVE are applied to a collection, these 
  operations affect all the descendents of the collection, but they do so 
  indirectly.  There is no need to visit each descendent in order to 
  process the request.  Consequently, even if there are redirect reference 
  resources in a tree that is being deleted or moved, there will be no 302 
  responses from the redirect reference resources. 
</t>
</section>

<section title="LOCK on a Collection That Contains Redirect References">

<t>
  LOCK poses special problems because it is atomic. An attempt to lock 
  (with Depth: infinity) a collection that contains redirect references 
  will always fail.  The Multi-Status response will contain a 302 response 
  for each redirect reference.
</t>
<t>
  Reference-aware clients can lock the collection by using Apply-To-Redirect-Ref,
  and, if desired, lock the targets of the redirect 
  references individually.
</t>
<t>
  Non-referencing clients must resort to locking each resource 
  individually.
</t>
</section>

<section title="Example: PROPFIND on a Collection with Redirect Reference Resources">

<t>
  Suppose a PROPFIND request with Depth: infinity is submitted to the 
  following collection, with the members shown here:
</t>
<figure><artwork>
http://www.svr.com/MyCollection/
     (non-reference resource) diary.html
     (redirect reference resource) nunavut
</artwork></figure>
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
PROPFIND /MyCollection/ HTTP/1.1
Host: www.svr.com
Depth: infinity
Content-Type: text/xml
Content-Length: xxxx

&lt;?xml version="1.0" ?&gt;
&lt;D:propfind xmlns:D="DAV: "&gt;
  &lt;D:prop xmlns:J="http://www.svr.com/jsprops/"&gt;
    &lt;D:resourcetype/&gt;
    &lt;J:keywords/&gt;
  &lt;/D:prop&gt;
&lt;/D:propfind&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 207 Multi-Status
Content-Type: text/xml
Content-Length: xxxx

&lt;?xml version="1.0" ?&gt;
&lt;D:multistatus xmlns:D="DAV:" xmlns:J="http://www.svr.com/jsprops/"&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype&gt;&lt;D:collection/&gt;&lt;/D:resourcetype&gt;
        &lt;J:keywords&gt;diary, interests, hobbies&lt;/J:keywords&gt;
      &lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/diary.html&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype/&gt;
        &lt;J:keywords&gt;diary, travel, family, history&lt;/J:keywords&gt;
      &lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/nunavut&lt;/D:href&gt;
    &lt;D:status&gt;HTTP/1.1 302 Found&lt;/D:status&gt;
    &lt;D:prop&gt;
      &lt;D:location&gt; 
        &lt;D:href&gt;http://www.inac.gc.ca/art/inuit/&lt;/D:href&gt;
      &lt;/D:location&gt;
      &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
    &lt;/D:prop&gt;
  &lt;/D:response&gt;
&lt;/D:multistatus&gt;
</artwork>
</figure>
<t>
  In this example the Depth header is set to infinity, and the Apply-To-Redirect-Ref
  header is not used.  The collection contains one URI that 
  identifies a redirect reference resource.  The response element for the 
  redirect reference resource has a status of 302 (Found), and includes a 
  DAV:prop element with the DAV:location pseudo-property and the 
  DAV:resourcetype property to allow clients to retrieve the properties of 
  its target resource.  (The response element for the redirect reference 
  resource does not include the requested properties.  The client can 
  submit another PROPFIND request to the URI in the DAV:location pseudo-property
  to retrieve those properties.) 
</t>
</section>

<section title="Example: PROPFIND with Apply-To-Redirect-Ref on a Collection with Redirect Reference Resources">
<ed:issue name="lc-67-redirectref" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    7.4: The explanation should not contrast displaying the properties of the redirect ref with displaying the properties of its target, but with returning a 302.
  </ed:item>
  <ed:resolution datetime="2003-09-10">
    Revise as recommended.
  </ed:resolution>
</ed:issue>
<t>
  Suppose a PROPFIND request with Apply-To-Redirect-Ref and <ed:replace datetime="2003-07-26" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>Depth =</ed:del><ed:ins>Depth:</ed:ins></ed:replace> 
  infinity is submitted to the following collection, with the members 
  shown here:
</t>
<figure><artwork>
/MyCollection/
     (non-reference resource) diary.html
     (redirect reference resource) nunavut
</artwork></figure>
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
PROPFIND /MyCollection/ HTTP/1.1
Host: www.svr.com
Depth: infinity
Apply-To-Redirect-Ref:
Content-Type: text/xml
Content-Length: xxxx

&lt;?xml version="1.0" ?&gt;
&lt;D:propfind xmlns:D="DAV:"&gt;
  &lt;D:prop&gt;
    &lt;D:resourcetype/&gt;
    &lt;D:reftarget/&gt;
  &lt;/D:prop&gt;
&lt;/D:propfind&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 207 Multi-Status
Content-Type: text/xml
Content-Length: xxxx

&lt;?xml version="1.0" ?&gt;
&lt;D:multistatus xmlns:D="DAV:"&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype&gt;&lt;D:collection/&gt;&lt;/D:resourcetype&gt;
      &lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;&lt;D:reftarget/&gt;&lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 404 Not Found&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/diary.html&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype/&gt;
      &lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;&lt;D:reftarget/&gt;&lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 404 Not Found&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/nunavut&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
        &lt;D:reftarget&gt;
          &lt;D:href&gt;http://www.inac.gc.ca/art/inuit/&lt;/D:href&gt;
        &lt;/D:reftarget&gt;
      &lt;/D:prop&gt;
    &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
&lt;/D:multistatus&gt;
</artwork>
</figure>

<t>
  Since the Apply-To-Redirect-Ref header is present, the response shows 
  the properties of the redirect reference resource in the collection 
  rather than <ed:replace ed:resolves="lc-67-redirectref" datetime="2003-07-26" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>the properties of its target. The Apply-To-Redirect-Ref 
  header also prevents a 302 response from being returned for the redirect 
  reference resource.</ed:del><ed:ins>reporting a 302 status.</ed:ins></ed:replace>
</t>
</section>

<section title="Example: COPY on a Collection That Contains a Redirect Reference Resource">
<t>
  Suppose a COPY request is submitted to the following collection, with 
  the members shown:
</t>
<figure><artwork>
/MyCollection/
     (non-reference resource) diary.html
     (redirect reference resource) nunavut with target       
                                /Someplace/nunavut.map
</artwork></figure>
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
COPY /MyCollection/ HTTP/1.1
Host: www.svr.com
Depth: infinity
Destination: http://www.svr.com/OtherCollection/
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 207 Multi-Status
Content-Type: text/xml; charset="utf-8"
Content-Length: xxx

&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;D:multistatus xmlns:D="DAV:"&gt;
  &lt;D:response&gt;
  &lt;D:href&gt;http://www.svr.com/MyCollection/nunavut&lt;/D:href&gt;
  &lt;D:status&gt;HTTP/1.1 302 Found&lt;/D:status&gt;
  &lt;D:prop&gt;
    &lt;D:location&gt; 
      &lt;D:href&gt;http://www.svr.com//Someplace/nunavut.map&lt;/D:href&gt;
    &lt;/D:location&gt;
    &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
  &lt;/D:prop&gt;
  &lt;/D:response&gt;
&lt;/D:multistatus&gt;
</artwork>
</figure>
<t>
  In this case, since /MyCollection/nunavut is a redirect reference 
  resource, the COPY operation was only a partial success.  The redirect 
  reference resource was not copied, but a 302 response was returned for 
  it.  So the resulting collection is as follows:
</t>
<figure><artwork>
/OtherCollection/
      (non-reference resource) diary.html
</artwork></figure>
</section>


<section title="Example: LOCK on a Collection That Contains a Redirect Reference Resource">

<t>
  Suppose a LOCK request is submitted to the following collection, with 
  the members shown:
</t>
<figure><artwork>
/MyCollection/
     (non-reference resource) diary.html
     (redirect reference resource) nunavut
</artwork></figure>
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
LOCK /MyCollection/ HTTP/1.1
Host: www.svr.com
Content-Type: text/xml
Content-Length: nnnn
Authorizaton: Digest username="jas",
   realm=jas@webdav.sb.aol.com, nonce=". . . ",
   uri="/MyCollection/tuva",
   response=". . . ", opaque=". . . "

&lt;?xml version="1.0" ?&gt;
&lt;D:lockinfo xmlns:D="DAV:"&gt;
  &lt;D:lockscope&gt;&lt;D:exclusive/&gt;&lt;/D:lockscope&gt;
  &lt;D:locktype&gt;&lt;D:write/&gt;&lt;/D:locktype&gt;
  &lt;D:owner&gt;
    &lt;D:href&gt;http://www.svr.com/~jas/contact.html&lt;/D:href&gt;
  &lt;/D:owner&gt;
&lt;/D:lockinfo&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 207 Multi-Status
Content-Type: text/xml
Content-Length: nnnn

&lt;?xml version="1.0" ?&gt;
&lt;D:multistatus xmlns:D="Dav:"&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;&lt;D:lockdiscovery/&gt;&lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 424 Failed Dependency&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/diary.html&lt;/D:href&gt;
    &lt;D:status&gt;HTTP/1.1 424 Failed Dependency&lt;/D:status&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;http://www.svr.com/MyCollection/nunavut&lt;/D:href&gt;
    &lt;D:status&gt;HTTP/1.1 302 Found&lt;/D:status&gt;
    &lt;D:prop&gt;
      &lt;D:location&gt;
        &lt;D:href&gt;http://www.inac.gc.ca/art/inuit/&lt;/D:href&gt;
      &lt;/D:location&gt;
      &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
    &lt;/D:prop&gt;
  &lt;/D:response&gt;
&lt;/D:multistatus&gt;
</artwork>
</figure>
<t>
  The server returns a 302 response code for the redirect reference 
  resource in the collection.  Consequently, neither the collection nor 
  any of the resources identified by its internal member URIs were locked.  
  A referencing-aware client can submit a separate LOCK request to the URI 
  in the DAV:location pseudo-property returned for the redirect reference 
  resource, and can resubmit the LOCK request with the Apply-To-Redirect-Ref
  header to the collection.  At that point both the reference resource 
  and its target resource will be locked (as well as the collection and 
  all the resources identified by its other members).
</t>
</section>
</section>

<section title="Operations on Targets of Redirect Reference Resources" anchor="operations.on.targets.of.redirect.reference.resources">
<t>
  Operations on targets of redirect reference resources have no effect on 
  the reference resource. 
</t>
</section>

<section title="Relative URIs in DAV:reftarget">
<ed:issue name="lc-06-reftarget-relative" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0222.html">
  <ed:item date="2000-01-29" entered-by="joe@orton.demon.co.uk">
    Why does the spec talk about relative URIs in DAV:reftarget in MKRESOURCE
    requests? Is the server required to resolve the relative URI and store it as absolute?
    Is the server required to keep DAV:reftarget pointing to the target resource
    as the reference / target move, or is DAV:reftarget a dead property?
  </ed:item>
  <ed:resolution>
    DAV:reftarget is readonly and present only on redirect references that are
    also WebDAV resources.
    Add a method for setting the target. Change definition of Redirect-Ref header
    so that it has the target as its value (comes back on all 302 responses).
    Server MUST store the target exactly as it is set. It MUST NOT resolve
    relatives to absolutes and MUST NOT update if target resource moves.
    See also issue 17, 43, 50, 57
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-57-noautoupdate" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0307.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Add language to forbid servers from automatically updating redirect resources when their targets move.
  </ed:item>
  <ed:resolution>
    Agreed.
    See also issue 6.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-71-relative" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 9:
    Base URI should be the Request-URI or href minus its final segment.
  </ed:item>
  <ed:resolution>
    Fix this.
  </ed:resolution>
</ed:issue>
<t>
  The URI in the href in a DAV:reftarget property MAY be a relative URI.  
  In this case, the base URI to be used for resolving the relative URI to 
  absolute form is the URI used in the HTTP message to identify the 
  redirect reference resource to which the DAV:reftarget property belongs.  
</t>
<t>
  When DAV:reftarget occurs in the body of a MKRESOURCE request, the base 
  URI is constructed as follows: Its scheme component is "http", its 
  authority component is the value of the Host header in the request, and 
  its path component is the Request-URI in the request.  See Section 5 of 
  <xref target="RFC2396"/> for a discussion of relative URI references and how to resolve 
  them.
</t>
<t>
  When DAV:reftarget appears in the context of a Multi-Status response, it 
  is in a DAV:response element that contains a single DAV:href element.  
  The value of this DAV:href element serves as the base URI for resolving 
  a relative URI in DAV:reftarget.  The value of DAV:href may itself be 
  relative, in which case it must be resolved first in order to serve as 
  the base URI for the relative URI in DAV:reftarget.  If the DAV:href 
  element is relative, its base URI is constructed from the scheme 
  component "http", the value of the Host header in the request, and the 
  request-URI.
</t>

<section title="Example: Resolving a Relative URI in a MKRESOURCE Request">
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
MKRESOURCE /north/inuvik HTTP/1.1
Host: www.somehost.edu
Content-Type: text/xml; charset="utf-8"
Content-Length: xxx

&lt;?xml version="1.0" encoding="utf-8" ?&gt;
&lt;D:propertyupdate xmlns:D="DAV:"&gt;
  &lt;D:set&gt;
    &lt;D:prop&gt;
      &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
      &lt;D:reftarget&gt;
        &lt;D:href&gt;mapcollection/inuvik.gif&lt;/D:href&gt;
      &lt;/D:reftarget&gt;
    &lt;/D:prop&gt;
  &lt;/D:set&gt;
&lt;/D:propertyupdate&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 201 Created
</artwork>
</figure>
<t>
  In this example, the base URI is http://www.somehost.edu/north/inuvik.  
  Then, following the rules in <xref target="RFC2396"/> Section 5, the relative URI in 
  DAV:reftarget resolves to the absolute URI 
  http://www.somehost.edu/north/mapcollection/inuvik.gif. 
</t>
</section>

<section title="Example: Resolving a Relative URI in a Multi-Status Response">
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
PROPFIND /geog/ HTTP/1.1
Host: www.xxsvr.com
Apply-To-Redirect-Ref:
Depth: 1
Content-Type: text/xml
Content-Length: nnn

&lt;?xml version="1.0" ?&gt;
&lt;D:propfind xmlns:D="DAV:"&gt;
  &lt;D:prop&gt;
    &lt;D:resourcetype/&gt;
    &lt;D:reftarget/&gt;
  &lt;/D:prop&gt;
&lt;/D:propfind&gt;
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 207 Multi-Status
Content-Type: text/xml
Content-Length: nnn

&lt;?xml version="1/0" ?&gt;
&lt;D:multistatus xmlns:D="DAV:"&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;/geog/&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype&gt;&lt;D:collection/&gt;&lt;/D:resourcetype&gt;
      &lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;&lt;D:reftarget/&gt;&lt;/D:prop&gt;
      &lt;D:status&gt;HTTP/1.1 404 Not Found&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
  &lt;D:response&gt;
    &lt;D:href&gt;/geog/stats.html&lt;/D:href&gt;
    &lt;D:propstat&gt;
      &lt;D:prop&gt;
        &lt;D:resourcetype&gt;&lt;D:redirectref/&gt;&lt;/D:resourcetype&gt;
        &lt;D:reftarget&gt;
          &lt;D:href&gt;statistics/population/1997.html&lt;/D:href&gt;
        &lt;/D:reftarget&gt;
      &lt;/D:prop&gt;
    &lt;D:status&gt;HTTP/1.1 200 OK&lt;/D:status&gt;
    &lt;/D:propstat&gt;
  &lt;/D:response&gt;
&lt;/D:multistatus&gt;
</artwork>
</figure>
<t>
  In this example, the relative URI statistics/population/1997.html is 
  returned as the value of reftarget for the reference resource identified 
  by href /geog/stats.html.  The href is itself a relative URI, which 
  resolves to http://www.xxsrv.com/geog/stats.html.  This is the base URI 
  for resolving the relative URI in reftarget.  The absolute URI of 
  reftarget is http://www.xxsrv.com/geog/statistics/population/1997.html.
</t>
</section>
</section>

<section title="Redirect References to Collections" anchor="redirect.references.to.collections">
<ed:issue name="lc-53-s10" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0304.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    The behavior described in this section would have a very serious impact on the efficiency of mapping Request-URIs to resources in HTTP request processing.
    Also specify another type of redirect resource that does not behave as in section 10, but instead would "expose the behavior we see today in various HTTP servers that allow their users to create 300 resources." Be sure we know what behavior will be if the redirect location is not an HTTP URL, but, say ftp.
  </ed:item>
  <ed:resolution>
    We won't define 2 sorts of redirect references here.
    Servers SHOULD respond with 302 as described here, but if they can't do that, respond with 404 Not Found.
    (It's hard to modularize the behavior specified - it impacts processing Not Found cases of all methods, so you can't just add it to an HTTP server in a redirect ref module.)
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-72-trailingslash" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    Section 10: Forbid DAV:reftarget from ending in "/"
  </ed:item>
  <ed:resolution>
    Make the note warn about the possibility of two slashes in a row, recommend against ending target with a slash, since that could result in two slashes in a row.
  </ed:resolution>
</ed:issue>
<t>
  In a Request-URI /segment1/segment2/segment3, any of the three segments 
  may identify a redirect reference resource.  (See <xref target="RFC2396"/>, Section 3.3, 
  for definitions of "path" and "segment".)  If any segment in a Request-
  URI identifies a redirect reference resource, the response is a 302.  
  The value of the Location header in the 302 response is as follows: 
</t>
<t>
  The leftmost path segment of the request-URI that identifies a redirect 
  reference resource, together with all path segments and separators to 
  the left of it, is replaced by the value of the redirect reference 
  resource's DAV:reftarget property (resolved to an absolute URI).  The 
  remainder of the request-URI is concatenated to this path.  
</t>
<ed:issue name="lc-54-s10" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0304.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    The Note: in section 10 has the same problem pointed out in Bindings.NoSlash and needs to be fixed. It contradicts RFC 2518 and 2616, which both assume that a URL and the same URL + "/" may map to different resources.
  </ed:item>
  <ed:resolution datetime="2003-07-27">
    Agreed in mailing list discussions that no change is needed.
  </ed:resolution>
</ed:issue>
<t>
  Note: If the DAV:reftarget property ends with a "/" and the remainder of 
  the Request-URI is non-empty (and therefore must begin with a "/"), the 
  final "/" in the DAV:reftarget property is dropped before the remainder 
  of the Request-URI is appended.
</t>
<t>
  Consider Request-URI /x/y/z.html.  Suppose that /x/ is a redirect 
  reference resource whose target resource is collection /a/, which 
  contains redirect reference resource y whose target resource is 
  collection /b/, which contains redirect reference resource z.html whose 
  target resource is /c/d.html.
</t>


<figure><artwork>
/x/y/z.html
    |
    | /x -&gt; /a
    |
    v
/a/y/z.html
    |
    | /a/y -&gt; /b
    |
    v
/b/z.html
    |
    | /b/z.html -&gt; /c/d.html
    |
    v
/c/d.html
</artwork></figure>

<t>
  In this case the client must follow up three separate 302 responses 
  before finally reaching the target resource.  The server responds to the 
  initial request with a 302 with Location: /a/y/z.html, and the client 
  resubmits the request to /a/y/z.html.  The server responds to this 
  request with a 302 with Location: /b/z.html, and the client resubmits 
  the request to /b/z.html.  The server responds to this request with a 
  302 with Location: /c/d.html, and the client resubmits the request to 
  /c/d.html.  This final request succeeds.
</t>
</section>


<section title="Headers" anchor="headers">

<section title="Redirect-Ref Response Header" anchor="header.redirect-ref">
<ed:issue name="lc-50-blindredirect" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0300.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Replace current language explaining the purpose of the Redirect-Ref header with language that simply states that it marks blind 302 responses from redirect resources. (Section 6.3, 11.1)
  </ed:item>
  <ed:resolution>
    Section 6.3 was removed in response to issue 48.
    In 11.1, change the definition of the Redirect-Ref header to have the value of the target (relative URI) as its value. Then we don't need a method for retrieving the target's relative URI. Presence of the Redirect-Ref header lets the client know that the resource accepts Apply-To-RR header and the new method for updating target.
    Reject Yaron's suggested language, but make the above changes.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-74-terminology" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    "plain HTTP/1.1 redirect" - find some good name for this an use it consistently
  </ed:item>
</ed:issue>
<t>
  Redirect-Ref = "Redirect-Ref:" 
</t>
<t>
  The Redirect-Ref header is used in all 302 responses from redirect 
  reference resources.  Its presence informs reference-aware clients that 
  the response is not a plain HTTP/1.1 redirect, but is a response from a 
  redirect reference resource. 
</t>
</section>

<section title="Apply-To-Redirect-Ref Request Header" anchor="header.apply-to-redirect-ref">
<ed:issue name="lc-75-ignore" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0316.html">
  <ed:item date="2000-02-14" entered-by="reuterj@ira.uka.de">
    11.2:
    "If the Apply-To-Redirect-Ref header is used on a request to any other sort of resource besides a redirect reference resource, the server SHOULD ignore it."
    Don't need to say this since HTP already says that any header that is not understood should be ignored.
  </ed:item>
</ed:issue>
<t>
  Apply-To-Redirect-Ref = "Apply-To-Redirect-Ref" ":" 
</t>
<t>
  The optional Apply-To-Redirect-Ref header can be used on any request to 
  a redirect reference resource.  When it is used, the request MUST be 
  applied to the reference resource itself, and a 302 response MUST NOT be 
  returned.
</t>
<t>
  If the Apply-To-Redirect-Ref header is used on a request to any other 
  sort of resource besides a redirect reference resource, the server 
  SHOULD ignore it. 
</t>
</section>
</section>


<section title="Properties">

<section title="reftarget Property" anchor="reftarget.property">
<t>
<list style="hanging">
<t hangText="Name:">reftarget</t>
<t hangText="Namespace:">DAV:</t>
<t hangText="Purpose:">A property of redirect reference resources that provides an 
            efficient way for clients to discover the URI of the target 
            resource.  This is a read-only property after its initial 
            creation. Its value can only be set in a MKRESOURCE request.</t>
<t hangText="Value:">href containing the URI of the target resource.  This value 
            MAY be a relative URI.  The reftarget property can occur in 
            the entity bodies of MKRESOURCE requests and of responses to 
            PROPFIND requests.</t>
</list>
</t>
<figure><artwork>
&lt;!ELEMENT reftarget href &gt;
</artwork></figure>
</section>

<section title="location Pseudo-Property" anchor="PROPERTY_location">
<ed:issue name="lc-76-location" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    12.2:
    Make DAV:location a real (live) property, get rid of the DAV:reftarget property
  </ed:item>
</ed:issue>
<t>
<list style="hanging">
<t hangText="Name:">location</t>
<t hangText="Namespace:">DAV:</t>
<t hangText="Purpose:">For use with 302 (Found) response codes in Multi-Status 
            responses.  It contains the absolute URI of the temporary 
            location of the resource.  In the context of redirect 
            reference resources, this value is the absolute URI of the 
            target resource.  It is analogous to the Location header in 
            HTTP 302 responses defined in <xref target="RFC2616"/> Section 10.3.3 "302 
            Found."  Including the location pseudo-property in a Multi-
            Status response requires an extension to the syntax of the 
            DAV:response element defined in <xref target="RFC2518"/>, which is defined 
            in <xref target="extensions.to.response.element"/> below.  This pseudo-property is not expected 
            to be stored on the reference resource. It is modeled as a 
            property only so that it can be returned inside a DAV:prop 
            element in a Multi-Status response.</t>
<t hangText="Value:">href containing the absolute URI of the target resource.</t>
</list>
</t>
<figure><artwork>
&lt;!ELEMENT location href &gt;
</artwork></figure>
</section>
</section>


<section title="XML Elements">

<section title="redirectref XML Element" anchor="redirectref.xml.element">
<t>
<list style="hanging">
<t hangText="Name:">redirectref</t>
<t hangText="Namespace:">DAV:</t>
<t hangText="Purpose:">Used as the value of the DAV:resourcetype property to   
            specify that the resource type is a redirect reference   
            resource.</t>
</list>
</t>
<figure><artwork>
&lt;!ELEMENT redirectref EMPTY &gt;
</artwork></figure>
</section>
</section>


<section title="Extensions to the DAV:response XML Element for Multi-Status Responses" anchor="extensions.to.response.element">
<t>
  As described in <xref target="operations.on.collections.that.contain.redirect.reference.resources"/>, the DAV:location pseudo-property and the 
  DAV:resourcetype property may be returned in the DAV:response element of 
  a 207 Multi-Status response, to allow clients to resubmit their requests 
  to the target resource of a redirect reference resource.  
</t>
<t>
  Whenever these properties are included in a Multi-Status response, they 
  are placed in a DAV:prop element associated with the href to which they 
  apply.  This structure provides a framework for future extensions by 
  other standards that may need to include additional properties in their 
  responses.
</t>
<t>
  Consequently, the definition of the DAV:response XML element changes to 
  the following:
</t>
<figure><artwork>
&lt;!ELEMENT response (href, ((href*, status, prop?) | (propstat+)), 
responsedescription?) &gt;
</artwork></figure>
</section>


<section title="Capability Discovery" anchor="capability.discovery">
<t>
  Sections 9.1 and 15 of <xref target="RFC2518"/> describe the use of compliance classes 
  with the DAV header in responses to OPTIONS, to indicate which parts of 
  the WebDAV Distributed Authoring protocols the resource supports. This 
  specification defines an OPTIONAL extension to <xref target="RFC2518"/>.  It defines a 
  new compliance class, called redirectrefs, for use with the DAV header 
  in responses to OPTIONS requests.  If a resource does support redirect 
  references, its response to an OPTIONS request may indicate that it 
  does, by listing the new redirectrefs compliance class in the DAV 
  headerand by listing the MKRESOURCE method as one it supports.
</t>
<t>
  When responding to an OPTIONS request, any type of resource can include 
  redirectrefs in the value of the DAV header.  Doing so indicates that 
  the server permits a redirect reference resource at the request URI.
</t>

<section title="Example: Discovery of Support for Redirect Reference Resources">
<figure><preamble>
&gt;&gt; Request:</preamble>
<artwork>
OPTIONS /somecollection/someresource HTTP/1.1
HOST: somehost.org
</artwork>
</figure>
<figure><preamble>
&gt;&gt; Response:</preamble>
<artwork>
HTTP/1.1 200 OK
Date: Tue, 20 Jan 1998 20:52:29 GMT
Connection: close
Accept-Ranges: none
Allow: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, COPY, MOVE,
MKCOL, PROPFIND, PROPPATCH, LOCK, UNLOCK, MKRESOURCE
DAV: 1, 2, redirectrefs
</artwork>
</figure>
<t>
  The DAV header in the response indicates that the resource 
  /somecollection/someresource is level 1 and level 2 compliant, as 
  defined in <xref target="RFC2518"/>.  In addition, /somecollection/someresource supports 
  redirect reference resources.  The Allow header indicates that 
  MKRESOURCE requests can be submitted to /somecollection/someresource.  
  The Public header shows that other Request-URIs on the server support 
  additional methods.
</t>
</section>
</section>

<section title="Security Considerations" anchor="security.considerations">

<t>
  This section is provided to make applications that implement this protocol aware of the 
  security implications of this protocol. 
</t>
<t>
  All of the security considerations of HTTP/1.1 and the WebDAV 
  Distributed Authoring Protocol specification also apply to this protocol 
  specification.  In addition, redirect reference resources introduce 
  several new security concerns and increase the risk of some existing 
  threats.  These issues are detailed below.
</t>

<section title="Privacy Concerns">
<t>
  By creating redirect reference resources on a trusted server, it is 
  possible for a hostile agent to induce users to send private information 
  to a target on a different server.   This risk is mitigated somewhat, 
  since clients are required to notify the user of the redirection for any 
  request other than GET or HEAD. (See <xref target="RFC2616"/>, Section 10.3.3 302 Found.)
</t>
</section>

<section title="Redirect Loops">
<t>
  Although redirect loops were already possible in HTTP 1.1, the 
  introduction of the MKRESOURCE method creates a new avenue for clients 
  to create loops accidentally or maliciously.  If the reference resource 
  and its target are on the same server, the server may be able to detect 
  MKRESOURCE requests that would create loops. See also <xref target="RFC2616"/>, Section 
  10.3 "Redirection 3xx."
</t>
</section>

<section title="Redirect Reference Resources and Denial of Service">
<t>
  Denial of service attacks were already possible by posting URLs that 
  were intended for limited use at heavily used Web sites.  The 
  introduction of MKRESOURCE creates a new avenue for similar denial of 
  service attacks.  Clients can now create redirect reference resources at 
  heavily used sites to target locations that were not designed for heavy 
  usage.
</t>
</section>






<section title="Revealing Private Locations">
<ed:issue name="lc-78-directory" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    Section 16.4:
    Change "directory" to "collection".
    Not new to this protocol. Holds for any protocol that has hierarchical access paths.
  </ed:item>
</ed:issue>
<ed:issue name="lc-79-accesscontrol" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    Section 16.4:
    "In some environments, the owner of a resource might be able to use access control to prevent others from creating references to that resource."
    That would not be consistent with the concept of redirect references as weak links (e.g. think of moving a resource to a different locationo that is already the target of some redirection reference.
  </ed:item>
</ed:issue>
<t>
  There are several ways that redirect reference resources may reveal 
  information about <ed:replace ed:resolves="lc-78-directory" datetime="2003-07-27" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>directory</ed:del><ed:ins>collection</ed:ins></ed:replace> structures.  First, the DAV:reftarget 
  property of every redirect reference resource contains the URI of the 
  target resource.  Anyone who has access to the reference resource can 
  discover the <ed:replace ed:resolves="lc-78-directory" datetime="2003-07-27" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>directory</ed:del><ed:ins>collection</ed:ins></ed:replace> path that leads to the target resource.   The 
  owner of the target resource may have wanted to limit knowledge of this 
  <ed:replace ed:resolves="lc-78-directory" datetime="2003-07-27" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>directory</ed:del><ed:ins>collection</ed:ins></ed:replace> structure.
</t>
<t>
  Sufficiently powerful access control mechanisms can control this risk to 
  some extent.  Property-level access control could prevent users from 
  examining the DAV:reftarget property.  (The Location header returned in 
  responses to requests on redirect reference resources reveals the same 
  information, however.)  In some environments, the owner of a resource 
  might be able to use access control to prevent others from creating 
  references to that resource.
</t>
<t>
  This risk is no greater than the similar risk posed by HTML links.
</t>
</section>


</section>


<section title="Internationalization Considerations">
<ed:issue name="lc-80-i18n" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    Section 17:
    Could get rid of a lot of this section, since this protocol extends WebDAV. Just reference [WebDAV].
  </ed:item>
</ed:issue>

<t>
  This specification follows the practices of <xref target="RFC2518"/> in encoding all 
  human-readable content using XML <xref target="XML"/> and in the treatment of names.  
  Consequently, this specification complies with the IETF Character Set 
  Policy <xref target="RFC2277"/>.
</t>
<t>
  WebDAV applications MUST support the character set tagging, character 
  set encoding, and the language tagging functionality of the XML 
  specification.  This constraint ensures that the human-readable content 
  of this specification complies with <xref target="RFC2277"/>.
</t>
<t>
  As in <xref target="RFC2518"/>, names in this specification fall into three categories: 
  names of protocol elements such as methods and headers, names of XML 
  elements, and names of properties.  Naming of protocol elements follows 
  the precedent of HTTP, using English names encoded in USASCII for 
  methods and headers.  The names of XML elements used in this 
  specification are English names encoded in UTF-8.
</t>
<t>
  For error reporting, <xref target="RFC2518"/> follows the convention of HTTP/1.1 status 
  codes, including with each status code a short, English description of 
  the code (e.g., 423 Locked).  Internationalized applications will ignore 
  this message, and display an appropriate message in the user's language 
  and character set.
</t>
<t>
  This specification introduces no new strings that are displayed to users 
  as part of normal, error-free operation of the protocol.
</t>
<t>
  For rationales for these decisions and advice for application 
  implementors, see <xref target="RFC2518"/>.
</t>
</section>

<section title="IANA Considerations" anchor="iana.considerations">

<ed:issue name="lc-55-iana" type="change" status="open" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0305.html">
  <ed:item date="2000-02-11" entered-by="yarong@Exchange.Microsoft.com">
    Expand the IANA section to list all methods, headers, XML elements, MIME types, URL schemes, etc., defined by the spec.
  </ed:item>
  <ed:resolution>
    Agreed.
  </ed:resolution>
</ed:issue>
<ed:issue name="lc-82-iana" type="change" status="closed" href="http://lists.w3.org/Archives/Public/w3c-dist-auth/2000JanMar/0359.html">
  <ed:item date="2000-02-22" entered-by="reuterj@ira.uka.de">
    Section 18:
    Just reference [WebDAV] and say this protocol does not introduce any new considerations.
  </ed:item>
  <ed:resolution datetime="2003-07-27">Simplify, then resolve issue 55.</ed:resolution>
</ed:issue>
<t>
  <ed:replace ed:resolves="lc-82-iana" datetime="2003-07-27" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>This document uses the namespaces defined by <xref target="RFC2518"/> for properties and 
  XML elements.  All other</ed:del><ed:ins>All</ed:ins></ed:replace> IANA considerations mentioned in <xref target="RFC2518"/> also 
  apply to this document.
</t>
</section>

<section title="Acknowledgements">
<t>
  This draft has benefited from thoughtful discussion by Jim Amsden, Peter 
  Carlson, Steve Carter, Tyson Chihaya, Ken Coar, Ellis Cohen, Bruce 
  Cragun, Spencer Dawkins, Mark Day, Rajiv Dulepet, David Durand, Roy 
  Fielding, Yaron Goland, Fred Hitt, Alex Hopmann, James Hunt, Marcus 
  Jager, Chris Kaler, Manoj Kasichainula, Rohit Khare, Daniel LaLiberte, 
  Steve Martin, Larry Masinter, Jeff McAffer, <ed:ins datetime="2003-07-26" ed:entered-by="julian.reschke@greenbytes.de">Joe Orton, </ed:ins>
  Surendra Koduru Reddy, <ed:ins datetime="2003-07-26" ed:entered-by="julian.reschke@greenbytes.de">Juergen Reuter, </ed:ins>Max 
  Rible, Sam Ruby, Bradley Sergeant, Nick Shelness, John Stracke, John 
  Tigue, John Turner, Kevin Wiggen, and others.
</t>
</section>

	</middle>
    <back>
<references title="Normative References">

<reference anchor="RFC2277">

<front>
<title abbrev="Charset Policy">IETF Policy on Character Sets and Languages</title>
<author initials="H.T." surname="Alvestrand" fullname="Harald Tveit Alvestrand">
<organization>UNINETT</organization>
<address>
<postal>
<street>P.O.Box 6883 Elgeseter</street>
<street>N-7002 TRONDHEIM</street>
<country>NORWAY</country></postal>
<phone>+47 73 59 70 94</phone>
<email>Harald.T.Alvestrand@uninett.no</email></address></author>
<date month="January" year="1998"/>
<area>Applications</area>
<keyword>Internet Engineering Task Force</keyword>
<keyword>character encoding</keyword></front>

<seriesInfo name="BCP" value="18"/>
<seriesInfo name="RFC" value="2277"/>
</reference>


<reference anchor="RFC2119">

<front>
<title abbrev="RFC Key Words">Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials="S." surname="Bradner" fullname="Scott Bradner">
<organization>Harvard University</organization>
<address>
<postal>
<street>1350 Mass. Ave.</street>
<street>Cambridge</street>
<street>MA 02138</street></postal>
<phone>- +1 617 495 3864</phone>
<email>-</email></address></author>
<date month="March" year="1997"/>
<area>General</area>
<keyword>keyword</keyword>
</front>

<seriesInfo name="BCP" value="14"/>
<seriesInfo name="RFC" value="2119"/>
</reference>

<reference anchor="RFC2396">

<front>
<title abbrev="URI Generic Syntax">Uniform Resource Identifiers (URI): Generic Syntax</title>
<author initials="T." surname="Berners-Lee" fullname="Tim Berners-Lee">
<organization>World Wide Web Consortium</organization>
<address>
<postal>
<street>MIT Laboratory for Computer Science, NE43-356</street>
<street>545 Technology Square</street>
<city>Cambridge</city>
<region>MA</region>
<code>02139</code></postal>
<facsimile>+1(617)258-8682</facsimile>
<email>timbl@w3.org</email></address></author>
<author initials="R.T." surname="Fielding" fullname="Roy T. Fielding">
<organization>Department of Information and Computer Science</organization>
<address>
<postal>
<street>University of California, Irvine</street>
<city>Irvine</city>
<region>CA</region>
<code>92697-3425</code></postal>
<facsimile>+1(949)824-1715</facsimile>
<email>fielding@ics.uci.edu</email></address></author>
<author initials="L." surname="Masinter" fullname="Larry Masinter">
<organization>Xerox PARC</organization>
<address>
<postal>
<street>3333 Coyote Hill Road</street>
<city>Palo Alto</city>
<region>CA</region>
<code>94034</code></postal>
<facsimile>+1(415)812-4333</facsimile>
<email>masinter@parc.xerox.com</email></address></author>
<date month="August" year="1998"/>
<area>Applications</area>
<keyword>uniform resource</keyword>
<keyword>URI</keyword>
<abstract>
<t>
   A Uniform Resource Identifier (URI) is a compact string of characters
   for identifying an abstract or physical resource.  This document
   defines the generic syntax of URI, including both absolute and
   relative forms, and guidelines for their use; it revises and replaces
   the generic definitions in RFC 1738 and RFC 1808.
</t>
<t>
   This document defines a grammar that is a superset of all valid URI,
   such that an implementation can parse the common components of a URI
   reference without knowing the scheme-specific requirements of every
   possible identifier type.  This document does not define a generative
   grammar for URI; that task will be performed by the individual
   specifications of each URI scheme.
</t></abstract>
<note title="IESG Note">
<t>
   This paper describes a "superset" of operations that can be applied
   to URI.  It consists of both a grammar and a description of basic
   functionality for URI.  To understand what is a valid URI, both the
   grammar and the associated description have to be studied.  Some of
   the functionality described is not applicable to all URI schemes, and
   some operations are only possible when certain media types are
   retrieved using the URI, regardless of the scheme used.
</t></note></front>

<seriesInfo name="RFC" value="2396"/>
</reference>

<reference anchor="RFC2518">
<front>
<title>HTTP Extensions for Distributed Authoring -- WEBDAV</title>
<author initials="Y." surname="Goland" fullname="Y. Goland">
  <organization>Microsoft Corporation</organization>
  <address><email>yarong@microsoft.com</email></address>
</author>
<author initials="E." surname="Whitehead" fullname="E. J. Whitehead, Jr.">
  <organization abbrev="UC Irvine">Dept. Of Information and Computer Science, University of California, Irvine</organization>
	<address><email>ejw@ics.uci.edu</email></address>
</author>
<author initials="A." surname="Faizi" fullname="A. Faizi">
  <organization abbrev="Netscape">Netscape</organization>
  <address><email>asad@netscape.com</email></address>
</author>
<author initials="S.R." surname="Carter" fullname="S. R. Carter">
  <organization abbrev="Novell">Novell</organization>
  <address><email>srcarter@novell.com</email></address>
</author>
<author initials="D." surname="Jensen" fullname="D. Jensen">
  <organization abbrev="Novell">Novell</organization>
  <address><email>dcjensen@novell.com</email></address>
</author>
<date month="February" year="1999"/></front>
<seriesInfo name="RFC" value="2518"/>
</reference>

<reference anchor="RFC2616">

<front>
<title>Hypertext Transfer Protocol -- HTTP/1.1</title>
<author initials="R." surname="Fielding" fullname="R. Fielding">
  <organization>University of California, Irvine</organization>
  <address><email>fielding@ics.uci.edu</email></address>
</author>
<author initials="J." surname="Gettys" fullname="J. Gettys">
  <organization>W3C</organization>
  <address><email>jg@w3.org</email></address>
</author>
<author initials="J." surname="Mogul" fullname="J. Mogul">
  <organization>Compaq Computer Corporation</organization>
  <address><email>mogul@wrl.dec.com</email></address>
</author>
<author initials="H." surname="Frystyk" fullname="H. Frystyk">
  <organization>MIT Laboratory for Computer Science</organization>
  <address><email>frystyk@w3.org</email></address>
</author>
<author initials="L." surname="Masinter" fullname="L. Masinter">
  <organization>Xerox Corporation</organization>
  <address><email>masinter@parc.xerox.com</email></address>
</author>
<author initials="P." surname="Leach" fullname="P. Leach">
  <organization>Microsoft Corporation</organization>
  <address><email>paulle@microsoft.com</email></address>
</author>
<author initials="T." surname="Berners-Lee" fullname="T. Berners-Lee">
  <organization>W3C</organization>
  <address><email>timbl@w3.org</email></address>
</author>
<date month="June" year="1999"/></front>

<seriesInfo name="RFC" value="2616"/>
</reference>

<reference anchor="XML" target="http://www.w3.org/TR/2000/REC-xml-20001006">
  <front>
    <title>Extensible Markup Language (XML) 1.0 (2nd ed)</title>
    <author initials="T." surname="Bray" fullname="Tim Bray">
      <organization>Textuality and Netscape</organization>
      <address>
        <email>tbray@textuality.com</email>
      </address>
    </author>
    <author initials="J." surname="Paoli" fullname="Jean Paoli">
      <organization>Microsoft</organization>
      <address>
        <email>jeanpa@microsoft.com</email>
      </address>
    </author>
    <author initials="C.M." surname="Sperberg-McQueen" fullname="C. M. Sperberg-McQueen">
      <organization>University of Illinois at Chicago and Text Encoding Initiative</organization>
      <address>
        <email>cmsmcq@uic.edu</email>
      </address>
    </author>
    <author initials="E." surname="Maler" fullname="Eve Maler">
      <organization>Sun Microsystems</organization>
      <address>
        <email>eve.maler@east.sun.com</email>
      </address>
    </author>
    <date day="6" month="October" year="2000"/>
  </front>
  <seriesInfo name="W3C" value="REC-xml"/>
</reference>
</references>

<ed:replace datetime="2003-07-27" ed:resolves="lc-34-bind" ed:entered-by="julian.reschke@greenbytes.de"><ed:del>
<references title="Informative References">

<reference anchor="B">
  <front>
    <title>Binding Extensions to WebDAV</title>
    <author initials="G." surname="Clemm" fullname="G. Clemm">
      <organization abbrev="Rational">Rational Software Corporation</organization>
      <address>
        <postal>
          <street>20 Maguire Road</street>
          <city>Lexington</city><region>MA</region><code>02173-3104</code>
        </postal>
        <email>geoffrey.clemm@us.ibm.com</email>
      </address>
    </author>
    <author initials="J." surname="Crawford" fullname="J. Crawford">
      <organization abbrev="IBM">IBM Research</organization>
      <address>
        <postal>
          <street>P.O. Box 704</street>
          <city>Yorktown Heights</city><region>NY</region><code>10598</code>
        </postal>
        <email>ccjason@us.ibm.com</email>
      </address>
    </author>
    <author initials="J. F." surname="Reschke" fullname="Julian F. Reschke">
      <organization abbrev="greenbytes">greenbytes GmbH</organization>
      <address>
        <postal>
          <street>Salzmannstrasse 152</street>
          <city>Muenster</city><region>NW</region><code>48159</code>
          <country>Germany</country>
        </postal>
        <phone>+49 251 2807760</phone>
        <facsimile>+49 251 2807761</facsimile>
       <email>julian.reschke@greenbytes.de</email>
        <uri>http://greenbytes.de/tech/webdav/</uri>
      </address>
    </author>
    <author initials="J." surname="Slein" fullname="J. Slein">
      <organization abbrev="Xerox">Xerox Corporation</organization>
      <address>
      <postal>
        <street>800 Phillips Road, 105-50C</street>
        <city>Webster</city><region>NY</region><code>14580</code>
      </postal>
      <email>jslein@crt.xerox.com</email>	
    </address>
  </author>
  <author initials="J." surname="Whitehead" fullname="Jim Whitehead">
    <organization abbrev="U.C. Santa Cruz">UC Santa Cruz, Dept. of Computer Science</organization>
    <address>
      <postal>
        <street>1156 High Street</street>
        <city>Santa Cruz</city>
        <region>CA</region>
        <code>95064</code>
        <country>US</country>
      </postal>
      <email>ejw@cse.ucsc.edu</email>
    </address>
  </author>
  <date month="June" year="2003" />
  </front>
  <seriesInfo name="Internet Draft (work in progress)" value="draft-ietf-webdav-bind-02" />
</reference>
</references>
</ed:del></ed:replace>


<section title="Changes to the WebDAV Document Type Definition">
<figure><artwork>
&lt;!-- XML Elements from Section 13 --&gt;
&lt;!ELEMENT redirectref EMPTY &gt;
&lt;!--  --&gt;Property Elements from Section 12 --&gt;
&lt;!ELEMENT reftarget href&gt;
&lt;!ELEMENT location href&gt;
&lt;!-- Changes to the DAV:response Element from Section 14 --&gt;
&lt;!ELEMENT response (href, ((href*, status, prop?) | (propstat+)), 
responsedescription?) &gt;
</artwork></figure>
</section>




<section title="Change Log (to be removed by RFC Editor before publication)">

<section title="Since draft-ietf-webdav-redirectref-protocol-02">
<t>
  Julian Reschke takes editorial role (added to authors list). Cleanup
  XML indentation. Start adding all unresolved last call issues. Update
  some author's contact information. Update references, split into "normative"
  and "informational". Remove non-RFC2616 headers ("Public") from examples.
  Fixed width problems in artwork. Start resolving editorial issues.
</t>
</section>

<ed:ins title="2003-09-10, julian.reschke@greenbytes.de">
<section title="Since draft-ietf-webdav-redirectref-protocol-03">
<t>
  Added Joe Orton and Juergen Reuter to Acknowledgements section. Close more
  editorial issues. Remove dependencies on BIND spec.
</t>
</section>
</ed:ins>

</section>


</back>
</rfc>
