RFC 4918 - HTTPの拡張: Web分散オーサリングとバージョン管理(WebDAV)
発行日: 2007年6月
ステータス: 標準化過程 (Standards Track)
著者: L. Dusseault (Ed.) (CommerceNet)
廃止: RFC 2518
カテゴリ: Standards Track
概要 (Abstract)
Web分散オーサリングとバージョン管理 (WebDAV, Web Distributed Authoring and Versioning) は、リソースプロパティ (Resource Properties) の管理、リソースコレクション (Resource Collections) の作成と管理、URL名前空間操作 (URL Namespace Manipulation)、およびリソースロック (Resource Locking、衝突回避用) のための、HTTP/1.1に付属する一連のメソッド (Methods)、ヘッダー (Headers)、およびコンテンツタイプ (Content-Types) で構成されます。
RFC 2518は1999年2月に発行されました。本仕様はRFC 2518を廃止し、相互運用性の経験に基づいた軽微な改訂を行っています。
本メモのステータス (Status of This Memo)
本文書は、インターネットコミュニティのためのインターネット標準化過程プロトコルを規定し、改善のための議論と提案を求めます。本プロトコルの標準化状態とステータスについては、「インターネット公式プロトコル標準」(STD 1) の最新版を参照してください。本メモの配布は無制限です。
著作権表示 (Copyright Notice)
Copyright (C) The IETF Trust (2007).
目次 (Contents)
主要セクション
- 1. Introduction (序論)
- 2. Notational Conventions (表記規則)
- 3. Terminology (用語)
- 4. Data Model for Resource Properties (リソースプロパティのデータモデル)
- 4.1 リソースプロパティモデル
- 4.2 プロパティとHTTPヘッダー
- 4.3 プロパティ値
- 4.4 プロパティ名
- 4.5 ソースリソースと出力リソース
- 5. Collections of Web Resources (Webリソースのコレクション)
- 5.1 HTTP URL名前空間モデル
- 5.2 コレクションリソース
- 6. Locking (ロック)
- 7. Write Lock (書き込みロック)
- 8. General Request and Response Handling (一般的なリクエストとレスポンスの処理)
- 9. HTTP Methods for Distributed Authoring (分散オーサリングのためのHTTPメソッド)
- 10. HTTP Headers for Distributed Authoring (分散オーサリングのためのHTTPヘッダー)
- 11. Status Code Extensions to HTTP/1.1 (HTTP/1.1ステータスコード拡張)
- 12. Use of HTTP Status Codes (HTTPステータスコードの使用)
- 13. Multi-Status Response (マルチステータスレスポンス)
- 14. XML Element Definitions (XML要素定義)
- 15-25. 追加セクション (DAVプロパティ、準拠性、セキュリティなど)
付録 (Appendices)
- 付録A. XML要素の処理に関する注意事項 - 翻訳中
- 付録B. HTTPクライアントの互換性に関する注意事項 - 翻訳中
- 付録C. 'opaquelocktoken'スキームとURI - 翻訳中
- 付録D. ロックヌルリソース - 翻訳中
- 付録E. 認証を希望するクライアントへのガイダンス - 翻訳中
- 付録F. RFC 2518からの変更点の要約 - 翻訳中
WebDAVの中核概念
主要機能
WebDAVは、HTTP/1.1プロトコルを以下の中核機能で拡張します:
- プロパティ (Properties): Webリソースのメタデータを追加、変更、クエリ
- コレクション (Collections): リソースの階層構造を作成・管理
- ロック (Locking): 同時編集の競合を防止、排他ロックと共有ロックをサポート
- 名前空間操作 (Namespace Operations): Webリソースのコピーと移動
新しいHTTPメソッド
- PROPFIND: リソースのプロパティを取得します
- PROPPATCH: リソースのプロパティを変更します
- MKCOL: コレクションを作成します (ディレクトリの作成に類似)
- COPY: リソースまたはコレクションをコピーします
- MOVE: リソースまたはコレクションを移動または名前変更します
- LOCK: 競合を防ぐためにリソースをロックします
- UNLOCK: リソースのロックを解除します
新しいHTTPステータスコード
- 207 Multi-Status: バッチ操作のためのマルチステータスレスポンス
- 422 Unprocessable Entity: リクエストは整形されていたが、意味的なエラーが含まれていた
- 423 Locked: リソースがロックされています
- 424 Failed Dependency: 前のリクエストの失敗により、リクエストが失敗しました
- 507 Insufficient Storage: リクエストを完了するためのストレージが不足しています
使用例
- 協調編集 (Collaborative Editing): 複数のユーザーがWebコンテンツを同時に編集
- コンテンツ管理システム (CMS): Webサイトコンテンツのリモート管理
- ファイル共有 (File Sharing): HTTPプロトコル経由でのファイルのアップロードとダウンロード
- クラウドストレージ (Cloud Storage): HTTPベースのファイルストレージサービスの実装
関連リソース (Related Resources)
- 公式テキスト: RFC 4918 (TXT)
- 公式ページ: RFC 4918 DataTracker
- 正誤表: RFC Editor Errata