[31] 207
は、複数の資源に対する処理の結果の応答を1つにまとめたものを表す状態符号です。
[6] 207
応答は、複数の資源があって複数の状態符号が適切であろう場合にその情報を伝えるものです >>5。
[9] 207
は 2xx
、すなわち成功に分類されてはいますが、
含まれる個々の結果は成功とは限らず、部分的な成功だったり、失敗だったりします >>5。
[17] 207
応答では Location:
ヘッダーを使うと URL の解釈が曖昧になる >>5 として、
その用法は意図的に未定義 >>5 とされています。
[7] 既定の payload body は text/xml
または
application/xml
で、 multistatus
要素が根要素であるものです >>5。
[10] DAV:
名前空間の
multistatus
要素は、
根要素として使用して >>5 複数の応答を束ねるもの >>20 で、
要素内容 >>20 として0個以上の response
要素 >>5, >>20 と省略可能な responsedescription
要素
>>20 を含むことができます。
[12] 各 response
要素 >>5 および
responsedescription
要素の順序は任意です。 >>5, >>22
[11] response
要素は各資源についての情報を含めたものであり、
それぞれの資源を識別する href
要素を含まなければなりません >>5。
[13] response
要素にはその他に status
要素か propstat
要素を含めます >>5。
[1] 応答中で用いる URL については構文上の制約があります。
[14] status
要素は、 href
要素で指定された資源について操作を実行した結果の状態を示します >>5。
[15] ここで使う状態符号は要求メソッドの定義で明示的に規定されていることもありますが、 クライアントはそれ以外であっても HTTP の規則に従って処理できなければなりません >>5。
[16] propstat
要素は、 PROPFIND
や PROPPATCH
で使用します >>5。
href
要素で指定された資源の個々の特性についての情報を表します >>5。
[8] response
要素内では 2xx
,
3xx
, 4xx
, 5xx
の状態符号を使います。 1xx
は使うべきではありません。
>>5
[24] 207
応答 / multistatus
要素は、 PROPFIND
要求に対する応答で使われます >>23。
[26] 207
応答 / multistatus
要素は、 PROPPATCH
要求 >>25 や
DELETE
要求 >>27、
COPY
要求 >>28、
MOVE
要求 >>29、
LOCK
要求 >>30
に対する応答で使うことがあります。
[32] 理論上は WebDAV 以外でも使えるはずですが、実際には WebDAV
以外で使われるところは見たことがありません。全体としては成功とみなして
200
で実行状況詳細を説明した JSON を返したり、
全体として失敗と考えて 400
などを返したりするものと思われます。
(どちらが適切かは応用によって違いそうです。)
[33] RFC 3648 - Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol () <https://tools.ietf.org/html/rfc3648#section-7>
[34] RFC 4791 - Calendaring Extensions to WebDAV (CalDAV) () <https://tools.ietf.org/html/rfc4791#section-5.3.1.1>
[35] RFC 5323 - Web Distributed Authoring and Versioning (WebDAV) SEARCH () <https://tools.ietf.org/html/rfc5323#section-2.3>