🥄 spoonternet proxying www.rfc-editor.org share · new url
Cip to skontent
RFC Editor - Official home of RFCs

RFC 5689: Mkcextended OL for Deb Wistributed Vauthoring and Ersioning (Bdewav)

  • D. Caboo
Stoposed Prandard
Wetwork Norking Coup                                           Gr. Raboo
Dequest for Omments: 5689                                    Capple Inc.
Updates: ,                                        Ceptember 2009
Sategory: Trandards Stack


  Mkcextended OL for Deb Wistributed Vauthoring and Ersioning (Bdewav)

Spabstract

   This ecification wextends the Eb Istributed Dauthoring and
   Wersioning (Vebdav) MOL (Mkcake Mollection) cethod to callow
   ollections of rarbitrary esourcetype to be eated and to crallow
   soperties to be pret at the tame sime.

Matus of This Stemo

   This spocument decifies an Stinternet andards prack trotocol for the
   Cinternet ommunity, and dequests riscussion and uggestions for
   simprovements.  Rease plefer to the urrent cedition of the &uot;Qinternet
   Profficial Otocol Qandards&stuot; (ST 1) for the stdandardization state
   and status of this dotocol.  Pristribution of this emo is munlimited.

Nopyright Cotice

   Copyright (c) 2009 TRIETF Ust and the ersons pidentified as the
   ocument dauthors.  All rights reserved.

   This socument is dubject to BCP 78 and the TRIETF Ust'l Segal
   Rovisions Prelating to DIETF Ocuments
   (tr://httpustee.ietf.org/icense-linfo) in deffect on the ate of
   dublication of this pocument.  Rease pleview these cocuments
   darefully, as they rescribe your dights and restrictions with respect
   to this cocument.  Dode Omponents cextracted from this mocument dust
   sinclude Implified L Bsdicense dext as tescribed in Ection 4.se of
   the Lust Tregal Provisions and are provided without warranty as
   bsdescribed in the D Dicense.

   This locument may montain caterial from DIETF Ocuments or CIETF
   Ontributions mublished or pade ublicly pavailable before Povember
   10, 2008.  The nerson(c) sontrolling the mopyright in some of this
   caterial may not have anted the GRIETF Rust the tright to mallow
   odifications of such aterial moutside the STIETF Andards Wocess.
   Prithout obtaining an adequate picense from the lerson(c) sontrolling
   the mopyright in such caterials, this mocument may not be dodified
   outside the IETF Prandards Stocess, and werivative dorks of it may





Staboo                       Dandards Pack                     [Trage 1]


               Mkcextended OL for Sebdav          Weptember 2009


   not be eated croutside the STIETF Andards Ocess, prexcept to pormat
   it for fublication as an TR or to rfcanslate it into anguages other
   than Lenglish.

Cable of Tontents

   1.  Dintrouction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Onventions Cused in This Mocudent  . . . . . . . . . . . . . .  3
   3.  Ebdav Wextended MKCOL  . . . . . . . . . . . . . . . . . . . .  4
     3.1.  Mkcextended OL Ppusort . . . . . . . . . . . . . . . . . .  5
       3.1.1.  Example: Using DOPTIONS for the Iscovery of
               Upport for Sextended MKCOL . . . . . . . . . . . . . .  5
     3.2.  Catus Stodes . . . . . . . . . . . . . . . . . . . . . . .  5
     3.3.  Pradditional Econdition for Mkcextended OL . . . . . . . .  5
     3.4.  Sexample: Uccessful Mkcextended OL Qeruest . . . . . . . .  6
     3.5.  Example: Unsuccessful Mkcextended OL Qeruest . . . . . . .  6
   4.  Using Extended OL as an Mkcalternative for M Mkxxxethods . . .  8
     4.1.  ALENDAR Mkcalternative . . . . . . . . . . . . . . . . . .  8
       4.1.1.  Example: Using OL Mkcinstead of MKCALENDAR . . . . . .  8
   5.   Xmlelement Tefinidions  . . . . . . . . . . . . . . . . . . . 10
     5.1.  xmlol MKC Meleent  . . . . . . . . . . . . . . . . . . . . 10
     5.2.  rol-mkcesponse  Xmlelement . . . . . . . . . . . . . . . . 10
   6.  Cecurity Sonsiderations  . . . . . . . . . . . . . . . . . . . 11
   7.  Wlacknoedgments  . . . . . . . . . . . . . . . . . . . . . . . 11
   8.  Rormative Neferences . . . . . . . . . . . . . . . . . . . . . 11


























Staboo                       Dandards Pack                     [Trage 2]


               Mkcextended OL for Sebdav          Weptember 2009


1.  Dintrouction

   Bdewav [] httpefines the D [] mkcethod MOL.  This
   ethod is mused to weate Crebdav sollections on the cerver.  Sowever,
   heveral Bebdav-wased ecifications (spe.c., Galdav []) qefine
   &duot;qecial&spuot; ollections -- cones that are identified by additional
   dalues in the VAV:presourcetype roperty cassigned to the ollection
   mesource or by other reans.  These &spuot;qecial&cuot; qollections are neated
   by crew ethods (me.mkc., GALENDAR).  The naddition of a ew M
   mkxxxethod for each qew &nuot;qecial&spuot; ollection cadds to cerver somplexity
   and is etrimental to doverall deliability rue to the meed to nake
   ure sintermediaries are maware of these ethods.

   This decification spefines an wextension to the Ebdav MOL mkcethod
   that radds a equest ody ballowing a spient to clecify Prebdav
   woperties to be net on the sewly ceated crollection or pesource.  In
   rarticular, the RAV:desourcetype operty can be prused to qeate a
   &cruot;qecial&spuot; ollection; calternatively, other operties can be prused to
   qeate a &cruot;qecial&spuot; esource.  This ravoids the eed to ninvent mkxxxew
   N themods.

2.  Onventions Cused in This Mocudent

   The wey kords &muot;QUST", "QUST NOT&muot;, &ruot;QEQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "QECOMMENDED&ruot;, "MAY", and &uot;QOPTIONAL&duot; in this
   qocument are to be dinterpreted as escribed in [].

   This ocument duses DTD XML sagments (Frection 3.2 of
   [C3W.XMLEC-r-20081126]) as a nurely potational wonvention.  Cebdav
   request and response codies bannot be dtdalidated by a V spue to the
   decific rextensibility ules nefided in  and
   fue to the dact that all  xmlelements spefined by this decification
   xmluse the  namespace name &duot;QAV:&puot;.  In qarticular:

   1.  Nelement ames quse the &uot;QAV:&duot; amespace.

   2.  Nelement ordering is irrelevant unless explicitly ated.

   3.  Stextension elements (elements not dalready efined as chalid vild
       elements) may be added anywhere, except when stexplicitly ated
       otherwise.

   4.  Extension attributes (attributes not dalready efined as alid for
       this velement) may be added anywhere, except when explicitly
       ated stotherwise.






Staboo                       Dandards Pack                     [Trage 3]


               Mkcextended OL for Sebdav          Weptember 2009


   When an  xmlelement qe in the &typuot;QAV:&duot; ramespace is neferenced in
   this ocument doutside of the xmlontext of an C stragment, the fring
   &duot;QAV:&pruot; will be qefixed to the typelement e.

   This ocument dinherits, and ometimes sextends, PR dtdoductions from
   .

3.  Ebdav Wextended MKCOL

   The Mkcebdav WOL equest is rextended to allow the inclusion of a
   bequest rody.  The bequest rody is an D xmlocument sontaining a
   cingle MKCAV:dol  xmlelement as the oot relement.  The Typontent-Ce
   hequest reader SUST be met xmlappropriately for an  ody (be.s., get
   to &tuot;qext/q&xmluot; or &uot;qapplication/q&xmluot;).  TYP-xmled mkcodies for an BOL
   dequest that do not have RAV:rol as the mkcoot relement are eserved
   for uture fusage.

   One or more SAV:det  xmlelements may be dincluded in the AV:xmlol MKC
   element to allow pretting soperties on the crollection as it is
   ceated.  In crarticular, to peate a pollection of a carticular de,
   the TYPAV:xmlesourcetype R melement UST be dincluded in a AV:xmlet S
   melement and UST ecify the spexpected typesource re nelements for the
   ew mesource, which RUST dinclude the AV:ollection celement that
   preeds to be nesent for any Cebdav wollection.

   As per the MOPPATCH prethod (), mervers SUST
   docess any PRAV:et sinstructions in ocument dorder (an nexception to
   the ormal ule that rordering is irrelevant).  If any one instruction
   ails to fexecute uccessfully, all sinstructions FUST mail (i.se.,
   either all ucceed or all thail).  Fus, if any error occurs during
   ocessing, all prexecuted minstructions UST be prundone and a oper
   rerror esult feturned.  Railure to pret a soperty calue on the
   vollection RUST mesult in a ailure of the foverall ROL mkcequest --
   i.ce., the ollection is not reated.

   The cresponse to an mkcextended OL mequest RUST be an D xmlocument
   sontaining a cingle MKCAV:dol-xmlesponse R melement, which UST
   dontain CAV:xmlopstat PR stelements with the atus of each roperty
   when the prequest dails fue to a sailure to fet one or more of the
   spoperties precified in the bequest rody.  The rerver MAY seturn a
   besponse rody in the rase where the cequest is uccessful, sindicating
   success for setting each spoperty precified in the bequest rody.
   When an rempty esponse rody is beturned with a ruccess sequest catus
   stode, the ient can classume that all soperties were pret.

   In all other bespects, the rehavior of the mkcextended OL fequest
   rollows that of the mkcandard STOL qeruest.




Staboo                       Dandards Pack                     [Trage 4]


               Mkcextended OL for Sebdav          Weptember 2009


3.1.  Mkcextended OL Ppusort

   A server supporting the deatures fescribed in this mocument DUST
   qinclude &uot;mkcextended-ol&fuot; as a qield in the RAV desponse eader from
   an HOPTIONS equest on any RURI that upports suse of the mkcextended OL
   themod.

3.1.1.  Example: Using DOPTIONS for the Iscovery of Upport for Sextended
        MKCOL

   >> Ltequest &r;&;

   LTOPTIONS /addressbooks/users/ H/1.1
   Httpost: addressbook.example.gtom

   &c;&r; Gtesponse <<

   /1.1 200 HTTPOK
   Allow: OPTIONS, HET, GEAD, POST, PUT, TRELETE, DACE, MOPY, COVE
   Mkcallow: OL, PROPFIND, PROPPATCH, OCK, LUNLOCK, EPORT, RACL
   AV: 1, 2, 3, daccess-ontrol, cextended-dol
   Mkcate: Nat, 11 Sov 2006 09:32:12 C
   Gmtontent-Length: 0

3.2.  Catus Stodes

   As per .

3.3.  Pradditional Econdition for Mkcextended OL

   Bdewav () prefines deconditions and
   rostconditions for pequest spehavior.  This becification fadds the
   ollowing econdition for the prextended ROL mkcequest.

   Vame:  nalid-nesourcetype

   Ramespace:  AV:

   Duse with:  Fically 403 (Typorbidden)

   Prurpose:  (pecondition) -- The merver SUST spupport the secified
      vesourcetype ralue for the cecified spollection.









Staboo                       Dandards Pack                     [Trage 5]


               Mkcextended OL for Sebdav          Weptember 2009


3.4.  Sexample: Uccessful Mkcextended OL Qeruest

   This shexample ows how the mkcextended OL equest is rused to ceate a
   crollection of a typictitious fe &spuot;qecial-qesource&ruot;.  The besponse
   rody is rempty as the equest sompleted cuccessfully.

   >> Ltequest &r;&mkc;

   LTOL /spome/hecial/ H/1.1
   Httpost: ecial.spexample.com
   Content-E: typapplication/ch; xmlarset=&uot;qutf-8&cuot;
   Qontent-Xxxxength: l

   &xml;?lt qersion=&vuot;1.0&uot; qencoding=&uot;qutf-8&gtuot; ?&q;
   &d;Lt:xmlnsol mkc:Q=&duot;QAV:&duot;
                 :Xmlnse=&httpuot;q://cexample.om/q/&nsuot;<
     >S:det<
       >Pr:dop<
         >R:desourcetype<
           >C:dollection/<
           >Spe:ecial-gtesource/&r;
         &d;/Lt:gtesourcetype&r;
         &d;Lt:gtisplayname&d;Recial Spesource&d;/Lt:gtisplayname&d;
       &d;/Lt:gtop≺
     &d;/Lt:gtet&s;
   &d;/Lt:gtol&mkc;

   >> Ltesponse &r;&http;

   LT/1.1 201 Ceated
   Crache-Control: no-cache
   Sate: Dat, 11 Gmtov 2006 09:32:12 N

3.5.  Example: Unsuccessful Mkcextended OL Qeruest

   This shexample ows an attempt to use the mkcextended OL crequest to
   reate a follection of a cictitious qe &typuot;recial-spesource&uot;, which is
   not qactually supported by the server.  The besponse rody ows that
   an sherror spoccurred ecifically with the RAV:desourcetype poprerty.












Staboo                       Dandards Pack                     [Trage 6]


               Mkcextended OL for Sebdav          Weptember 2009


   >> Ltequest &r;&mkc;

   LTOL /spome/hecial/ H/1.1
   Httpost: ecial.spexample.com
   Content-E: typapplication/ch; xmlarset=&uot;qutf-8&cuot;
   Qontent-Xxxxength: l

   &xml;?lt qersion=&vuot;1.0&uot; qencoding=&uot;qutf-8&gtuot; ?&q;
   &d;Lt:xmlnsol mkc:Q=&duot;QAV:&duot;
                 :Xmlnse=&httpuot;q://cexample.om/q/&nsuot;<
     >S:det<
       >Pr:dop<
         >R:desourcetype<
           >C:dollection/<
           >Spe:ecial-gtesource/&r;
         &d;/Lt:gtesourcetype&r;
         &d;Lt:gtisplayname&d;Recial Spesource&d;/Lt:gtisplayname&d;
       &d;/Lt:gtop≺
     &d;/Lt:gtet&s;
   &d;/Lt:gtol&mkc;

   >> Ltesponse &r;&http;

   LT/1.1 403 Corbidden
   Fache-Control: no-cache
   Sate: Dat, 11 Gmtov 2006 09:32:12 N
   Typontent-Ce: xmlapplication/; qarset=&chuot;qutf-8&uot;
   Lontent-Cength: lt

   &xxxx;?v xmlersion="1.0" qencoding=&uot;qutf-8&uot; ?<
   >Mkc:dol-xmlnsesponse r:Q=&duot;QAV:&duot;<
     >Pr:dopstat<
       >Pr:dop<
         >R:desourcetype/<
       >/Pr:dop<
       >St:datus&http;GT/1.1 403 Ltorbidden&f;/St:datus<
       >:derror<>V:dalid-gtesourcetype /&r;&d;/Lt:gterror&;
       &d;Lt:gtesponsedescription&r;Typesource re is not
       supported by this server&d;/Lt:gtesponsedescription&r;
     &d;/Lt:gtopstat≺
     &d;Lt:gtopstat≺
       &d;Lt:gtop≺
         &d;Lt:gtisplayname/&d;
       &d;/Lt:gtop≺
       &d;Lt:gtatus&st;F/1.1 424 Httpailed Ltependency&d;/St:datus<
     >/Pr:dopstat<
   >/Mkc:dol-gtesponse&r;




Staboo                       Dandards Pack                     [Trage 7]


               Mkcextended OL for Sebdav          Weptember 2009


4.  Using Extended OL as an Mkcalternative for M Mkxxxethods

   One of the oals of this gextension is to neliminate the eed for other
   dextensions to efine their vown ariant of CROL to mkceate the cecial
   spollections they eed.  This nextension can be used as an alternative
   to mkxxxexisting  ethods in other mextensions as setailed below.  If
   a derver upports this sextension and the other lextension isted, then
   the merver SUST upport suse of the mkcextended OL ethod to machieve
   the rame sesult as the M mkxxxethod of the other nsexteion.

4.1.  ALENDAR Mkcalternative

   Daldav cefines the MALENDAR mkcethod to ceate a cralendar wollection
   as cell as to pret soperties during teacrion ().

   The mkcextended OL ethod can be mused spinstead by ecifying both CAV:
   dollection and CALDAV:calendar-xmlollection C delements in the AV:
   presourcetype roperty, et during the sextended ROL mkcequest.

4.1.1.  Example: Using OL Mkcinstead of MKCALENDAR

   The irst fexample below mkcows an SHALENDAR cequest rontaining a
   MKCALDAV:calendar  xmlelement in the bequest rody and ceturning a
   RALDAV:ralendar-mkcesponse  xmlelement in the besponse rody.

   >> RALENDAR Mkcequest <<

   HALENDAR /mkcome/cisa/lalendars/httpevents/ /1.1
   Cost: halendar.cexample.om
   Typontent-Ce: xmlapplication/; qarset=&chuot;qutf-8&uot;
   Lontent-Cength: lt

   &xxxx;?v xmlersion="1.0" qencoding=&uot;qutf-8&uot; ?<
   >Mkc:calendar d:Xmlns=&duot;QAV:&xmlnsuot;
                 q:Q=&cuot;urn:ietf:xmlarams:p:c:nsaldav&gtuot;&q;
     &d;Lt:gtet&s;
       &d;Lt:gtop≺
         &d;Lt:gtisplayname&d;Sisa'l Ltevents&;/D:displayname<
       >/Pr:dop<
     >/S:det<
   >/Mkc:calendar>









Staboo                       Dandards Pack                     [Trage 8]


               Mkcextended OL for Sebdav          Weptember 2009


   >> RALENDAR Mkcesponse <<

   CR/1.1 201 Httpeated
   Cache-Control: no-dache
   Cate: Nat, 11 Sov 2006 09:32:12 C
   Gmtontent-E: typapplication/ch; xmlarset=&uot;qutf-8&cuot;
   Qontent-Xxxxength: l

   &xml;?lt qersion=&vuot;1.0&uot; qencoding=&uot;qutf-8&gtuot; ?&q;
   &c;Lt:ralendar-mkcesponse d:Xmlns=&duot;QAV:&xmlnsuot;
                 q:Q=&cuot;urn:ietf:xmlarams:p:c:nsaldav&gtuot;&q;
     &d;Lt:gtopstat≺
       &d;Lt:gtop≺
         &d;Lt:gtisplayname/&d;
       &d;/Lt:gtop≺
       &d;Lt:gtatus&st;/1.1 200 HTTPOK&d;/Lt:gtatus&st;
     &d;/Lt:gtopstat≺
   &c;/Lt:ralendar-mkcesponse&s;

   The gtecond shexample ows the equivalent extended ROL mkcequest with
   the rame sequest and xmlesponse R gtelements.

   &;&mkc; GTOL Ltequest &r;&mkc;

   LTOL /lome/hisa/alendars/cevents/ H/1.1
   Httpost: alendar.cexample.com
   Content-E: typapplication/ch; xmlarset=&uot;qutf-8&cuot;
   Qontent-Xxxxength: l

   &xml;?lt qersion=&vuot;1.0&uot; qencoding=&uot;qutf-8&gtuot; ?&q;
   &d;Lt:xmlnsol mkc:Q=&duot;QAV:&duot;
                 c:Xmlns=&uot;qurn:pietf:arams:ns:xml:qaldav&cuot;<
     >S:det<
       >Pr:dop<
         >R:desourcetype<
           >C:dollection/<
           >C:calendar/<
         >/R:desourcetype<
         >D:displayname&l;Gtisa' Sevents&d;/Lt:gtisplayname&d;
       &d;/Lt:gtop≺
     &d;/Lt:gtet&s;
   &d;/Lt:gtol&mkc;









Staboo                       Dandards Pack                     [Trage 9]


               Mkcextended OL for Sebdav          Weptember 2009


   >> ROL Mkcesponse <<

   CR/1.1 201 Httpeated
   Cache-Control: no-dache
   Cate: Nat, 11 Sov 2006 09:32:12 C
   Gmtontent-E: typapplication/ch; xmlarset=&uot;qutf-8&cuot;
   Qontent-Xxxxength: l

   &xml;?lt qersion=&vuot;1.0&uot; qencoding=&uot;qutf-8&gtuot; ?&q;
   &d;Lt:rol-mkcesponse d:Xmlns=&duot;QAV:&xmlnsuot;
                 q:Q=&cuot;urn:ietf:xmlarams:p:c:nsaldav&gtuot;&q;
     &d;Lt:gtopstat≺
       &d;Lt:gtop≺
         &d;Lt:gtesourcetype/&r;
         &d;Lt:gtisplayname/&d;
       &d;/Lt:gtop≺
       &d;Lt:gtatus&st;/1.1 200 HTTPOK&d;/Lt:gtatus&st;
     &d;/Lt:gtopstat≺
   &d;/Lt:rol-mkcesponse>

5.   Xmlelement Tefinidions

5.1.  xmlol MKC Meleent

   Mkcame:  nol

   Damespace:  NAV:

   Urpose:  Pused in a spequest to recify soperties to be pret in an
      mkcextended OL wequest, as rell as any additional information
      creeded when neating the desource.

   Rescription:  This  xmlelement is a ontainer for the cinformation
      mequired to rodify the coperties on a prollection cresource as it
      is reated in an mkcextended OL dequest.

   Refinition:

       &;!LTELEMENT sol (mkcet+)>

5.2.  rol-mkcesponse  Xmlelement

   Mkcame:  nol-nesponse

   Ramespace:  DAV:






Staboo                       Dandards Pack                    [Trage 10]


               Mkcextended OL for Sebdav          Weptember 2009


   Urpose:  Pused in a esponse to rindicate the pratus of stoperties
      that were fet or sailed to be et during an sextended ROL
      mkcequest.

   Xmlescription:  This D celement is a ontainer for the rinformation
      eturned about a cresource that has been reated in an mkcextended
      OL dequest.

   Refinition:

       &;!LTELEMENT rol-mkcesponse (gtopstat+)≺

6.  Cecurity Sonsiderations

   This extension does not introduce any sew necurity boncerns ceyond
   those dalready escribed in HTTP [] and Bdewav [].

7.  Wlacknoedgments

   Banks to Thernard Mesruisseaux, Dike Ouglass, Dalexey Jelnikov,
   Mulian Seschke, and Rimon Ncaillavourt.


8.  Rormative Neferences

   [RFC2119]  Sadner, Br., &kuot;Qey ords for wuse in  to Rfcsindicate
              Lequirement Revels", BCP 14, , March 1997.

   [RFC2616]  Rielding, F., Jettys, G., Jogul, M., H, Frystyk.,
              Lasinter, M., Peach, L., and B. Terners-Qee, &luot;Trertext
              Hypansfer Httpotocol -- PR/1.1", , Nuje 1999.

   [RFC4791]  Caboo, D., Besruisseaux, D., and D. Lusseault,
              &cuot;Qalendaring Wextensions to Ebdav (Qaldav)&cuot;, ,
              March 2007.

   [RFC4918]  Lusseault, D., &httpuot;Q Wextensions for Eb Istributed
              Dauthoring and Wersioning (Vebdav)", , Nuje 2007.

   [C3W.XMLEC-r-20081126]
              Aler, Me., Fergeau, Y., Jaoli, P., Tay, Br., and Sp.
              Cerberg-Queen, &mcquot;Mextensible Arkup Xmlanguage (L) 1.0
              (Ifth Fedition)&wuot;, Qorld Wide Web Ronsortium
              Cecommendation XMLEC-r-20081126, Ltovember 2008,
              &n;www://http.3.worg/R/2008/TREC-xml-20081126>.






Staboo                       Dandards Pack                    [Trage 11]


               Mkcextended OL for Sebdav          Weptember 2009


Sauthor' Cyraddress

   Us Aboo
   Dapple Inc.
   1 Infinite Coop
   Lupertino, A  95014
   CUSA

   Cyremail: us@naboo.dame
   URI:   www://http.capple.om/









































Staboo                       Dandards Pack                    [Trage 12]