18. DAV兼容级别

符合DAV标准的资源可以宣告为多种合规性(兼容级别)。客户端可以通过在资源上执行OPTIONS并检查返回的“DAV” header来发现资源的兼容级别。特别要注意的是,兼容级别是对于资源而不是服务器来说的。这是因为理论上服务器的不同资源可以支持不同的功能集。例如,服务器可能有一个子存储库,其中支持诸如版本控制之类的高级功能,但并非所有子存储库均支持该功能。

由于本文档描述了HTTP/1.1协议的扩展,因此至少所有符合DAV标准的资源、客户端和代理都必须符合[RFC2616]。

符合2级或3级DAV标准的资源也必须符合1级DAV标准。

18.1 1级

符合1类级别的资源必须满足本文档所有部分中的所有“MUST”要求。

在对OPTIONS方法的所有响应中,符合1类级别的资源必须至少在DAV header中返回值“1”。

18.2 2级

符合2类级别的资源必须满足所有1类级别要求,并支持LOCK方法、DAV:supportedlock属性、DAV:lockdiscovery属性,Time-Out response header和Lock-Token request header。符合2类级别的资源也应支持Timeout request header和“owner” XML元素。 在对OPTIONS方法的所有响应中,符合2类级别要求的资源必须在DAV response header中至少返回“1”和“2”两个值。

18.3 3级

资源可以明确宣告其对本文档中针对[RFC2518]所进行的修订的支持。还必须支持1类标准。可以选择是否支持2类标准。除1和2之外,宣告了3类支持则意味着服务器支持此规范中的所有要求。声明3级和1级支持,但不包括2级,意味着服务器支持本规范中除设计锁定支持部分之外的所有要求。 例子:

  1. DAV: 1, 3