[10] [DFN[[CODE(HTTP)@en[[[Overwrite:]]]]]] [[ヘッダー]]は、
[CODE(HTTP)@en[[[COPY]]]] や [CODE(HTTP)@en[[[MOVE]]]]
によって既存の[[資源]]を上書きしても良いかどうかを表します。

* 仕様書

[REFS[
- [16] [CITE@en[RFC 4918 - HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)]] ([TIME[2014-09-21 17:04:59 +09:00]] 版) <http://tools.ietf.org/html/rfc4918#section-9.8>
- [17] [CITE@en[RFC 4918 - HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)]] ([TIME[2014-09-21 17:04:59 +09:00]] 版) <http://tools.ietf.org/html/rfc4918#section-9.9>
- [1] '''[CITE@en[RFC 4918 - HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)]] ([TIME[2014-09-21 17:04:59 +09:00]] 版) <http://tools.ietf.org/html/rfc4918#section-10.6>'''
- [11] [CITE@en[RFC 4918 - HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)]] ([TIME[2014-09-21 17:04:59 +09:00]] 版) <http://tools.ietf.org/html/rfc4918#section-12.1>
]REFS]

* 意味

[3] [CODE(HTTP)@en[[[Overwrite:]]]] [[ヘッダー]]は、
終点の [[URL]] にある[[資源]]を上書きするべきかどうかを指定するものです [SRC[>>1]]。

* 構文

[2] [CODE(HTTP)@en[[[Overwrite:]]]] [[ヘッダー]]の値は、
[CODE(HTTP)[[[T]]]] か [CODE(HTTP)[[[F]]]] です。
[[大文字・小文字不区別]]です。 [SRC[>>1]]

[FIG(railroad)[
= |
== [CODE(HTTP)[[[T]]]]
== [CODE(HTTP)[[[F]]]]
]FIG]

[7] [DFN[[CODE(HTTP)@en[[[T]]]]]] は、終点の [[URL]] が[[資源]]に[[写像]]されているとしても、
[CODE(HTTP)@en[[[COPY]]]] や [CODE(HTTP)@en[[[MOVE]]]] の操作を行ってもよいことを示します。

[4] [DFN[[CODE(HTTP)[[[F]]]]]] は、終点の [[URL]] が[[資源]]に[[写像]]されている時に、
[CODE(HTTP)@en[[[COPY]]]] や [CODE(HTTP)@en[[[MOVE]]]] の操作を行ってはならないことを示します
[SRC[>>1]]。

* 文脈

[12] 任意の[[要求]]が [CODE(HTTP)@en[[[Overwrite:]]]] [[ヘッダー]]を含めることができます
[SRC[>>11]]。

* 処理

[9] [[WebDAV]] に対応した[[資源]]は、 [CODE(HTTP)@en[[[Overwrite:]]]]
[[ヘッダー]]に対応しなければ[['''なりません''']] [SRC[>>1]]。

[5] [CODE(HTTP)@en[[[COPY]]]] や [CODE(HTTP)@en[[[MOVE]]]] の[[要求]]で
[CODE(HTTP)@en[[[Overwrite:]]]] [[ヘッダー]]が含まれていないなら、
[CODE(HTTP)@en[[[Overwrite:]] [[T]]]] と指定されたように扱わなければ[['''なりません''']]
[SRC[>>1]]。

[8] [CODE(HTTP)@en[[[COPY]]]] や [CODE(HTTP)@en[[[MOVE]]]] の[[要求]]が
[CODE(HTTP)@en[[[Overwrite:]]]] の値に起因して行われなかった場合は、
[CODE(HTTP)[[[412]]]] [[応答]]を返して失敗しなければ[['''なりません''']] [SRC[>>1, >>11, >>16, >>17]]。
なおこのチェックよりも前に[[認証]]のチェックを行っていなければなりません [SRC[>>1]]。

[13] 他の[[要求メソッド]]で指定された時の処理は規定されていません。

* 歴史

[14] [[IANA登録簿]]は [[RFC 4918]] が出典に更新されています [SRC[>>15]]。

[REFS[
- [15] [CITE@en[RFC 4918 - HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)]] ([TIME[2014-09-21 17:04:59 +09:00]] 版) <http://tools.ietf.org/html/rfc4918#section-21.3.6>
]REFS]

* 関連

[6] [CODE(HTTP)@en[[[Overwrite:]]]] [[ヘッダー]]は [CODE(HTTP)@en[[[If-Match:]] [[*]]]]
と似ていますが、 [CODE(HTTP)@en[[[If-Match:]]]] は[[対象資源]] (始点資源)
に適用されるのに対し、 [CODE(HTTP)@en[[[Overwrite:]]]] は終点資源に適用される点が異なります
[SRC[>>1]]。