14. XML Element Definitions (XML要素定義)
本セクションでは、WebDAVプロトコルメッセージで使用されるすべてのXML要素を定義します。すべての要素はDAV:名前空間にあり、セクション17のルールに従って拡張できます。
コアXML要素(30個の定義)
14.1 activelock
目的: リソースのロックを記述します。
<!ELEMENT activelock (lockscope, locktype, depth, owner?, timeout?, locktoken?, lockroot)>
14.2 allprop
目的: すべてのデッドプロパティとライブプロパティの名前と値を返すことを指定します。
<!ELEMENT allprop EMPTY >
14.3 collection
目的: 関連するリソースがコレクションであることを識別します。DAV:resourcetypeプロパティに含める必要があります (MUST)。
<!ELEMENT collection EMPTY >
14.4 depth
目的: XMLコンテンツで深度値を表現します。
値: "0" | "1" | "infinity"
<!ELEMENT depth (#PCDATA) >
14.5 error
目的: 403/409レスポンスの詳細なエラー情報を提供します。子要素は前提条件/事後条件コードを識別します。
<!ELEMENT error ANY >
14.6 exclusive
目的: 排他ロックを指定します。
<!ELEMENT exclusive EMPTY >
14.7 href
目的: URIまたは相対参照を含める必要があります (MUST)。
<!ELEMENT href (#PCDATA)>
14.8 include
目的: 子要素は、PROPFIND応答に含めるプロパティ名を表します (allpropと共に使用)。
<!ELEMENT include ANY >
14.9 location
目的: multistatusレスポンスでLocationヘッダー値を提供します。
<!ELEMENT location (href)>
14.10 lockentry
目的: リソースで使用できるロックタイプを定義します。
<!ELEMENT lockentry (lockscope, locktype) >
14.11 lockinfo
目的: LOCKメソッドで要求されるロックのタイプを指定するために使用されます。
<!ELEMENT lockinfo (lockscope, locktype, owner?) >
14.12 lockroot
目的: ロックのルートURL (LOCKリクエストで使用されたURL) を含みます。
<!ELEMENT lockroot (href) >
14.13 lockscope
目的: ロックが排他的か共有かを指定します。
<!ELEMENT lockscope (exclusive | shared) >
14.14 locktoken
目的: ロックに関連付けられたロックトークン。
<!ELEMENT locktoken (href) >
14.15 locktype
目的: ロックのアクセスタイプを指定します。現在、書き込みロックのみが定義されています。
<!ELEMENT locktype (write) >
14.16 multistatus
目的: 複数の応答メッセージを含みます。
<!ELEMENT multistatus (response*, responsedescription?) >
14.17 owner
目的: ロック作成者に関するクライアント提供情報。デッドプロパティとして扱われます (保持される)。
拡張性: 子要素、混合コンテンツ、テキスト、または属性で拡張できます (MAY)。
<!ELEMENT owner ANY >
14.18 prop
目的: リソースプロパティの汎用コンテナ。テキストや混合コンテンツを含んではなりません (MUST NOT)。
<!ELEMENT prop ANY >
14.19 propertyupdate
目的: プロパティ変更リクエストのコンテナ。
<!ELEMENT propertyupdate (remove | set)+ >
14.20 propfind
目的: PROPFINDメソッドから返されるプロパティを指定します。
<!ELEMENT propfind ( propname | (allprop, include?) | prop ) >
14.21 propname
目的: プロパティ名のみを返すことを指定します。
<!ELEMENT propname EMPTY >
14.22 propstat
目的: 特定のhrefに対するpropとstatusをグループ化します。
<!ELEMENT propstat (prop, status, error?, responsedescription?) >
14.23 remove
目的: 削除するプロパティをリストします。プロパティ要素は空でなければなりません (MUST)。
<!ELEMENT remove (prop) >
14.24 response
目的: リソースおよび/またはプロパティに対するメソッドの効果を記述する単一の応答。
<!ELEMENT response (href, ((href*, status)|(propstat+)), error?, responsedescription?, location?) >
14.25 responsedescription
目的: ステータス応答に関する人間が読める情報。
<!ELEMENT responsedescription (#PCDATA) >
14.26 set
目的: 設定するプロパティ値をリストします。プロパティが存在する場合、値は置き換えられます。
<!ELEMENT set (prop) >
14.27 shared
目的: 共有ロックを指定します。
<!ELEMENT shared EMPTY >
14.28 status
目的: 単一のHTTPステータスラインを保持します。
値: status-line (RFC 2616のセクション6.1)
<!ELEMENT status (#PCDATA) >
14.29 timeout
目的: ロックの有効期限が切れるまでの残り秒数。
値: TimeType (セクション10.7)
<!ELEMENT timeout (#PCDATA) >
14.30 write
目的: 書き込みロックを指定します。
<!ELEMENT write EMPTY >
XML要素カテゴリ
ロック関連要素
activelock, exclusive, shared, lockentry, lockinfo, lockroot, lockscope, locktoken, locktype, timeout, write, owner
プロパティ関連要素
prop, propfind, propname, allprop, include, propertyupdate, propstat, set, remove
レスポンス要素
multistatus, response, propstat, status, error, responsedescription, location
一般要素
href, depth, collection
注記: すべての要素はDAV:名前空間にあります。拡張性ルールを含む完全な仕様については、RFC 4918のセクション14を参照してください。