什么" abempty"在术语中表示" path-abempty"在RFC3986的上下文中?

时间:2016-12-01 08:18:52

标签: rfc3986

请参阅:https://tools.ietf.org/html/rfc3986#section-3

并且:https://tools.ietf.org/html/rfc3986#section-3.3

" abempty"的起源对我来说是神秘的,快速搜索并没有找出任何定义。

3 个答案:

答案 0 :(得分:4)

&#34; abempty&#34;,因为它在您参考的rfc中对其使用权的评论中声明,表示其值可以是 ab 溶质路径或< strong>空所以( abempty )。

答案 1 :(得分:0)

“Abempty”,意为 远离 为空,描述了路径与其前一个权限的关系。在路径优势相关的情况下,hier-part由“//”,权限和路径优势组成。权限组件可以是零长度 - 方案:///是有效的URI。

然而,当权限为零长度且路径为空时,无法区分这两个组件,因此路径优先路径 - 它&#34;以&#34; /&#34;开头。或者是空的&#34; (第3.3节)视情况而定。

来源:http://w3-org.9356.n7.nabble.com/path-abempty-in-URI-td170118.html(参见Fielding对Petch的回应。)

NB “abempty”这个词不是绝对和空洞的词汇。

请:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

hier-part在&#34; generic&#34;的范围内不是可选的。 URI。

hier-part = ("//" authority path-abempty) / path-absolute / path-rootless / path-empty

双斜线,有趣的是,不是可选的,其中path-abempty是相关的。并且,稍微向前跳,权威可能是零长度:

reg-name = *( unreserved / pct-encoded / sub-delims )

路径 - abempty是相关的,其中hier-part由“//”,权限和路径abempty组成。 Path-abempty定义为:

path-abempty = *( "/" segment )

RFC规定,“当存在权限时,路径必须为空或以斜杠(&#34; /&#34;)字符开头。”如果注册名称为零长度,则为随意读取该语句可能表明以下URI有效:

scheme://

不是。下一句话指出,“当权限不存在时,路径不能以两个斜杠字符('//')开头。”这意味着在解析以“scheme://”开头的URI时,我们指出了零长度权限和零长度路径 - 否则我们可以在那里停止因为URI无效。

在这种情况下,不是通常的情况,零长度权限无法从零长度路径中辨别出来。因此,当权限为零长度时,我们没有选择,路径必须以正斜杠开头(更准确地说,它必须匹配路径 - abempty)从权威中辨别出道路;否则,我会再说一遍: URI无效

“abempty”这个词并不意味着道路可能是绝对的或空的。这个词意味着路径必须将自己与权威区分开来,因此它是非常的,即远离为空。

<强>示例:

此URI不明确,因为即使它具有零长度权限和零长度路径,也无法从省略权限的无效URI中识别它,并且路径以两个正斜杠开头。

scheme://

这个URI不含糊,因为它显然包含零长度权限和路径优先路径。

scheme:///

答案 2 :(得分:0)

鉴于其在RFC 3986, Section 3.3中的定义和上下文:我相信 abempty absolute empty 的写照;与带有拉丁文 ab 前缀的 empty 相对。

可能的路径模式定义为:

path-abempty  = *( "/" segment )                    ; begins with "/" or is empty
path-absolute = "/" [ segment-nz *( "/" segment ) ] ; begins with "/" but not "//"
path-noscheme = segment-nz-nc *( "/" segment )      ; begins with a non-colon segment
path-rootless = segment-nz *( "/" segment )         ; begins with a segment
path-empty    = 0<pchar>                            ; zero characters
  • 路径空白本质上是扩展 路径绝对,结合了路径空白
  • 绝对或空路径变为绝对路径

免责声明

我的断言完全基于推论性推测,因为我找不到该词的词源或创造者。因此,如果有人具有相关知识,则要相互矛盾或佐证:请分享!