第2章语义网、RDF和关联数据(以及SPARQL
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
SPARQL查询语言适用于遵循特定模型的数据,但语义网与查询语言或模型无关,它与数据有关。语义网络上可用的数据量越来越大,这使得各种新型应用成为可能,而SPARQL作为一种针对语义网络而设计的实施良好的成熟标准,是获取这些数据并将其应用到你的应用中的最佳方式。
注意事项
RDF 数据模型的灵活性意味着它被越来越多地用于与 "语义网 "毫无关系的项目中,而这些项目只是使用了使用这些标准的技术--这就是为什么你经常会看到 "语义网技术 "的提法。
究竟什么是 "语义网"?
随着人们对语义网 的热情日益高涨,一些供应商利用这个词来销售与语义网背后的理念有密切联系的产品,而另一些供应商则利用这个词来销售联系较弱的产品。这可能会让试图了解语义网的人们感到困惑。
我喜欢把语义网定义为一套标准和最佳实践,用于通过网络共享数据及其语义,供应用程序使用。让我们每次用一两个短语来理解这个定义,然后再详细探讨这些问题。
一套标准
在蒂姆-伯纳斯-李(Tim Berners-Lee )发明万维网之前,人们已经有了功能更强大的超文本系统,但他的系统是根据他作为公共标准发布的简单规范建立的。这样,人们就有可能自己实现他的系统(即编写自己的网络服务器、网络浏览器,尤其是网页),他的系统也发展成为有史以来最大的超文本系统。伯纳斯-李创立了 W3C 来监督这些标准,语义网也是建立在 W3C 标准的基础上:RDF 数据模型、SPARQL 查询语言、RDF Schema 和 OWL 标准,用于存储词汇表和本体。产品或项目可以处理语义,但如果不使用这些标准,就无法连接到语义网并成为其中的一部分,就像 1985 年的超文本系统不使用 HTML 或 HTTP 标准就无法链接到万维网上的页面一样。(有人不同意最后这一点)。
通过网络共享数据......供应用程序使用的最佳实践
伯纳斯-李最初设计万维网的目的是提供人类可读的文档。如果你想在下周日下午从一个机场飞到另一个机场,你可以进入航空公司网站,填写查询表格,然后用眼睛从屏幕上读取查询结果。航空公司比较网站的程序可以从多个航空公司网站检索网页,并提取所需的信息,这一过程被称为 "屏幕抓取",然后将数据用于自己的网页。在编写这样的程序之前,航空公司比较网站的开发人员必须分析每家航空公司网站的 HTML 结构,以确定屏幕抓取程序应在何处查找所需的数据。如果某家航空公司重新设计了自己的网站,开发人员就必须更新屏幕抓取程序,以考虑到这些差异。
伯纳斯-李提出了关联数据(Linked Data )的概念,这是一套在网络基础设施中共享数据的最佳实践,这样应用程序就可以更轻松地从公共网站获取数据,而无需进行屏幕抓取--例如,让你的日历程序以一种通用的、机器可读的格式从多个航空公司网站获取航班信息。这些最佳实践建议使用 URI 来命名事物,并使用 RDF 和 SPARQL 等标准。它们为创建语义网的基础设施提供了很好的指导。
以及数据的语义
"语义 "的概念通常被定义为 "词语的意义"。关联数据原则和相关标准使得数据共享变得更加容易,而URI的使用可以通过提供术语的上下文来提供一些语义。例如,即使我不知道 "sh98003588#concept "指的是什么,我也能从URIhttp://id.loc.gov/authorities/sh98003588#concept中看出它来自美国国会图书馆。存储单词的完整含义以便计算机能够 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access