附录F. 与RFC 2518的变更摘要 (Summary of Changes from RFC 2518)
附录F. 与RFC 2518的变更摘要 (Summary of Changes from RFC 2518)
本附录提供了与RFC 2518的变更摘要。
F.1. 客户端和服务器实现的变更 (Changes for Both Client and Server Implementations)
澄清 (Clarifications):
- 添加了关于必须支持哪些HTTP功能的澄清。
- 添加了关于何时必须返回ETag的澄清。
- 澄清了永远不能删除根集合。
- 澄清了客户端需要能够处理包含任何顺序属性的PROPFIND响应。
- 澄清了对PROPFIND Depth infinity请求的要求。
- 添加了关于Timeout请求头使用的澄清。
- 添加了关于时间值处理的澄清。
处理澄清 (Processing Clarifications):
- 澄清了何时可以使用HTTP的If头而不是WebDAV的If头。
- 澄清了WebDAV客户端在与WebDAV服务器交互时需要能够处理401响应。
增强的指南 (Enhanced Guidance):
- 添加了关于使用DAV头的指南。
- 添加了处理HTTP条件头的指南。
- 添加了对具有过多资源的集合进行PROPFIND请求的指南。
- 添加了PROPFIND响应示例并澄清了格式要求。
- 添加了COPY请求示例并澄清了Overwrite头处理。
新功能 (New Functionality):
- 102(Processing)状态码已从本规范中删除。它未被广泛实现,已移至RFC 2518。
F.2. 客户端实现的变更 (Changes for Client Implementations)
新指南 (New Guidance):
- 添加了关于XML可扩展性的附录。
- 添加了关于客户端身份验证的附录。
- 添加了关于XML实体含义的安全考虑。
处理变更 (Processing Changes):
- 客户端不再需要在响应中接收到无效的元素排序时失败。
F.3. 服务器实现的变更 (Changes for Server Implementations)
锁空资源 (Lock-Null Resources):
- 服务器支持的锁空资源已被弃用,改为锁定的空资源。
- 为了向后兼容,服务器仍可以支持锁空资源。
属性变更 (Property Changes):
- 更改了许多属性定义以使其更加一致和清晰。
- 在需要DAV:getlastmodified的地方强制使用DAV:getetag属性。
- 删除了集合上的DAV:getcontenttype要求。
错误报告 (Error Reporting):
- 添加了前置条件/后置条件XML元素,以便在响应主体中更好地报告错误。
- 添加了关于使用前置条件和后置条件的指南。
COPY/MOVE行为 (COPY/MOVE Behavior):
- 澄清了COPY/MOVE相对于属性的行为。
- 澄清了COPY/MOVE与锁的行为。
- 澄清了COPY/MOVE相对于Depth头的行为。
锁处理 (Lock Handling):
- 澄清了LOCK请求中的锁所有者字段未经身份验证。
- 澄清了何时锁必须超时以及何时可以扩展。
- 添加了LockInfo元素澄清。
- 更正了DAV:supportedlock模式。
其他服务器变更 (Other Server Changes):
- 澄清了服务器何时必须使用404与405响应。
- 澄清了DELETE集合行为和错误报告。
- 澄清了PROPPATCH事务要求。
- OPTIONS方法必须在响应中包含"DAV"头。
F.4. XML处理的澄清 (Clarifications to XML Processing)
验证 (Validation):
- 澄清了XML处理和验证的要求级别。
- 澄清了XML处理规则仅适用于WebDAV定义的元素。
- 添加了关于处理未知XML元素的指南。
命名空间处理 (Namespace Handling):
- 澄清了属性和XML元素中的命名空间使用。
- 澄清了属性名称始终是限定的。
DTD变更 (DTD Changes):
- DTD已从规范中删除。它从未是规范性的,有时是不正确或不完整的。
F.5. 协议细节的澄清 (Clarifications to Protocol Details)
状态码澄清 (Status Code Clarifications):
- 澄清了何时必须或应该使用每个WebDAV状态码。
- 澄清了WebDAV状态码与HTTP状态码的交互。
头澄清 (Header Clarifications):
- 澄清了Depth头与各种方法的使用。
- 澄清了If头语法和处理。
- 澄清了Overwrite头使用。
响应格式 (Response Format):
- 使Multi-Status响应格式的要求更加清晰。
- 使href处理在所有使用中保持一致。
错误处理 (Error Handling):
- 使用前置条件/后置条件元素增强了整个错误处理。
- 添加了处理授权失败的具体指南。