摘要

  • RFC 1625 描述的 WAIS Type-3 查询,可以同时携带读者输入的初始文字,以及作为相关性反馈的整篇文档或选定片段;服务器返回排序后的引用条目,而不是文档正文。
  • 服务器不会保留结果集供之后逐条呈现。客户端要取回某条引用,必须另发一次 Search 请求,带上 Doc-ID、格式,以及必要时以字节、行或段落表示的范围。
  • RFC 1625 定义的是查询与响应的接口,并未建立跨服务器通用的相关性尺度、完整部署普查,也没有解释 WAIS 后来为何式微。

文档进入了问题本身

1994 年 6 月,一份信息类备忘录说明 WAIS 如何使用 Z39.50-1988。文件明确指出,它并不规定任何一种 Internet 标准。它关注的是客户端与服务器之间如何保持接口简单:客户端把用户写下的文字原样交给服务器,不必先把文字拆成服务器专属的 Type-1 查询,也无需预先掌握服务器支持哪些 Z39.50 属性。

WAIS 将这种自由文本形式称为 Type-3 查询。但它并不是一段孤立的字符串。查询可以同时包含用户输入的“seed words”(初始词语)和一组文档对象。对象可以是一整篇文档,也可以是其中一部分,并由 Doc-ID、对象类型、分块代码以及起止位置描述。分块代码说明范围按字节、行还是段落计算。

这第二种输入带来了相关性反馈:选中一篇文档或一段内容,再寻找与之相似的文档。客户端不必先把被选中的片段压缩成关键词,然后丢掉原对象。它可以把对象本身带入下一次查询,与读者输入的文字一起发送。服务器仍负责在自己的数据库中怎样检索;协议规定哪些信息能越过接口,并没有要求每个索引使用同一套排序算法。

这比“互联网学会了搜索”要具体得多。WAIS 是一个由客户端、服务器、数据库和协议构成的网络信息检索系统。1994 年 8 月的 RFC 1689 工具现状报告称,早期 WAIS 客户端接受自然语言查询,并报告全球有 100 多个数据库和 5,000 名用户。这是当时一份工具报告中的数字,不是独立审计过的普查,也不能说明后来的普及情况。

排名不是答案本身

服务器响应中包含一组 WAIS Citations(引用条目)。每条可以列出标题、相关性排名、可用格式、Doc-ID 和字节长度。RFC 1625 将最高分归一化为 1,000。这便于读取一组结果的先后顺序,却不能说明不同服务器的 900 分可以互相比,也不能证明第一条客观上相关,更不能证明读者已经找到有用答案。

引用条目指向服务器上的对象,却不包含对象正文。这个区别直接影响取回方式。RFC 1625 将 WAIS 描述为无状态:服务器不保存搜索结果集,发回响应后就可以删除。因此,WAIS 在这条路径上没有使用 Z39.50 的 Present 功能。若要获得选中的内容,客户端需要再次发出 Search 请求,这次通过 Type-1 查询指定 Doc-ID 和所需格式;还可以给出范围的起点与终点。

取回响应可以是整篇文档,也可以只是其中一段。RFC 1625 解释说,全文和图像可能大到超过客户端接收缓冲区,因此客户端可以分块请求。这是设计理由和可选能力,并不能证明每个客户端都会这样下载。请求了一个片段,也不等于拿到了整篇文档;需要核对请求范围和实际返回范围。

这里有三份不同的记录:读者提交了什么,服务器如何排序,以及客户端后来取回了什么。Type-3 查询可以把手写词语和选定片段合在一起;引用条目指向服务器上某个对象的特定格式;第二次请求则取回有限范围。把这些全叫作一个“搜索结果”,会掩盖解释、保存和取回分别发生在哪一端。

标识符有明确的适用范围

同年稍晚发布的 URL 规范为 WAIS 区分了三种地址:数据库、数据库中的一次查询,以及单独一篇文档。它还说明,wais: 不是指向任意 Z39.50 服务的通用地址。这种写法标明了服务和目标类型,却不能使每条引用都变成随处可访问的资源。

2005 年的一份 RFC 保留了历史 URI 方案 wais:,并附上一条简短的现状说明:WAIS 协议没有得到广泛实现,当时几乎已无 WAIS 服务器在用。这是一个有日期的状态记录,不是衰退原因的解释。现有文献不足以断言某个后继系统取代了 WAIS,也不足以说这种相关性循环促成了网络搜索的普及。

本系列中最接近的文章,是 Sofia Ren 写的 RFC 1432 书目故事:那里关注的是书籍条目、价格和联系信息是否仍能帮助读者拿到一本书。本文处理另一层问题:被选中的文档如何进入下一次查询、服务器怎样给引用排序、客户端随后如何按标识符和范围取回内容。这里的主张是协议机制,不是目录是否过时。

来源与证据边界

主要依据是 RFC 1625,并参照同期报告 RFC 1689。URI 的边界见 RFC 1738;后来的历史说明见 RFC 4156。这些文件都没有提供完整的实现普查、跨服务器排名基准或 WAIS 衰退的因果史。