跳转至内容

维基旅人:RDF

来自维客旅行

维基旅人的指南和其他文章包含由用户贡献的、供人类阅读和理解的精彩文本和图片。我们维基技术允许我们用自由的散文和图片来描述人物、地点、语言、景点以及成千上万的其他事物。但维基旅人中也存在可以标准化的描述和事物之间的关系,以便计算机也能处理它们。例如,我们可以定义一个文章是关于一个国家还是一个城市。如果是一个城市,我们可以定义它属于哪个国家。为了创建这些标准化的、机器可读的描述,我们使用一种称为资源描述框架RDF)的工具。

RDF 是什么?

[]

RDF 是一种直接在文章文本中记录标准化机器可读信息和关系的方式。无需任何形式的外部数据库。为了使系统更易于人类使用,RDF 语句通常包含在模板中,然后这些模板会被包含到维基旅人文章中。

所以,RDF 是一个用于对资源做出陈述的框架。在维基旅人中,资源理论上可以是任何东西:一个目的地、一个景点、一张图片、一篇文章,任何可以被命名的东西。

陈述的形式为:

resource predicate object

一个谓语是资源属性的名称,例如其大小、位置、历史、许可限制,或者与其他“资源”的关系。宾语是值。

所以,“汽车 颜色 红色”将是对一辆汽车的陈述;“悉尼 属于 新南威尔士州”将是对悉尼及其与新南威尔士州关系的陈述。

资源和属性必须唯一标识。人类或许能猜出我们指的是澳大利亚悉尼,但计算机没那么聪明。在网络世界中,每个“资源”都必须用 URI(通常是 URL)来标识。所以,我们会将悉尼标识为“http://en.wikipedia.org/wiki/Sydney”。对于更抽象的资源,这可能更棘手,但通常只是为其分配一个在维基旅人命名空间内的唯一标识符。例如,要标识用户:(WT-en) Evan,您可以使用他的维基旅人用户页面的 URI,“https://wikivoyage.cn/wiki/User:Evan”。

模式(Schemas)

[]

需要就陈述达成一致的人们通常会创建“词汇表”或“模式”。通过就模式达成一致,我们可以就某个特定谓语的含义达成一致。没有达成一致的模式,人们可能会发明不同的谓语来表示相同的含义,这会变得非常混乱。将模式视为我们使用的谓语的术语表或词典。

例如,都柏林核心元数据倡议(DCMI)有一个用于非常简单信息的模式,就像图书馆卡片上的信息一样。因为我们已经知道需要为所有资源和谓语提供唯一名称,所以 DCMI 定义的所有谓语都带有“dcterms:”前缀。

DCMI 定义了一个 isPartOf 谓语——某物是另一部分的概念。

所以,回到我们上面的例子,我们现在有了 RDF 关系:

https://wikivoyage.cn/wiki/Sydney dcterms:isPartOf https://wikivoyage.cn/wiki/New_South_Wales

isPartOf 只是 DCMI 中众多可用谓语之一。维基旅人使用的其他谓语包括 contributor(贡献者)和 date(日期)。

DCMI 并不是唯一对维基旅人有用的模式。像知识共享(Creative Commons)模式这样的模式也可能对指定许可信息有用。

我们也有自己的模式,其中包含用于指定维基旅人特有信息的谓语,例如谓语 wts:hasDocent 表示某些文章有导览员

RDF 语句可以用多种方式编码,但在维基旅人上,我们使用一种称为“Turtle RDF”的格式,这只是一种以人类可读的方式书写 RDF 关系的一种简单方法。

RDF 不是什么

[]

RDF 不是一种编程语言。它不是一种让事情发生或实现编程逻辑的方式。它不是需要编程经验才能理解的东西。我们在 RDF 中编码的信息越多,就可以对维基旅人信息进行越多的自动处理。RDF 最理想的用途是使已标准化的信息易于访问,从而允许应用程序和软件开发者以新颖有趣的方式使用我们的信息。然而,过度使用 RDF 可能会使维基旅人过于像一个数据库,而不是一本自由散文的旅行指南。

从维基旅人获取 RDF

[]

从维基旅人文章中检索关于资源的 RDF 语句很简单。Special:Rdf 允许您选择您感兴趣的文章以及要检索的数据类型。关于页面的许多有趣信息——历史、贡献者、许可、链接——都可以以 RDF 编码格式读取。

页面的 RDF 也(隐形地)链接在每个页面的标头中的 <link> 标签里。虽然这对人类读者是不可见的,但一些浏览器工具和网络爬虫可以读取并理解编码的 RDF 信息。

向维基旅人页面添加 RDF

[]

可以通过常规的编辑过程向维基旅人页面添加 RDF 语句。RDF 语句——或一组语句——可以直接写在页面源代码的 <rdf> ... </rdf> 标签之间。这些块中的 RDF 语句应采用 Turtle RDF 格式编码——这是一种易于使用的格式,模仿英语语法。

存储在页面中的 RDF 可以使用 Special:Rdf 页面的“页面内”模型进行检索。

RDF 与模板

[]

将所有 RDF 放在Mediawiki 模板中更好,因为这可以使页面更清晰,并使修复错误更容易。

对于只想为文章添加少量信息标签的人来说,Turtle RDF 的语法可能也很令人生畏,因此将 RDF 放在模板中可以使这些人的操作更简单。

另请参阅:项目:RDF 模板

RDF 在维基旅人上的可能用途

[]

维基旅人使用 RDF 进行页面内数据处理仍处于早期阶段,推广缓慢。有很多实验的空间。一些可能的内部用途:

  • 许可信息。使用“cc:licence”添加多重许可信息。
  • 注明维基旅人文章是否源自网络上的另一篇文章(例如 CIA Factbook),以及有关作者的信息。
  • 列出相关文章;关于类似地方的文章,将目的地与所讲语言的短语手册链接,将行程与目的地指南链接。
  • 描述地点(城市、国家、地区)及其彼此之间的地理关系(附近的城市、邻国……)。
  • 文章状态
  • 地理空间经纬度信息,包括 GPS 数据(参见项目:地理编码)。
  • 构建“面包屑”导航,例如“北美洲 > 加拿大 > 魁北克 > 蒙特利尔”(参见项目:面包屑导航)。
  • 对特定类型的文章(旅行主题、行程、目的地指南)和目的地(城市、国家、地区)进行特殊呈现。
  • 自动组织文章“集群”(例如,如果您想下载意大利及其在该国的所有城市和地区)。
  • 与 Google Maps 或 Yahoo Maps 等地图网站进行自动接口。

有一个关于 RDF 在维基旅人上用途的RDF 探险活动。如果您对更多细节感兴趣,请加入探险活动。


参见

[]

RDF 及其可能用途是一个广泛的话题。以下是一些有助于了解更多的有用链接。


参见

[]
© 2026 wikivoyage.cn. Text is available under the CC BY-SA 4.0 License.