Schema.org: Web上结构化数据的演变(笔记)

来自谷歌和微软的三位Schema.org开发者,2015年底发表了一篇介绍四年来Schema.org演变的文章,在追求“结构化数据”的大背景下,详述开发的前因后果,以及与关联数据的关系:

R.V. Guha, Dan Brickley, Steve Macbeth. Schema.org: Evolution of Structured Data on the Web. Queue vol. 13, no. 9 (December 15, 2015)

文章小标题:Big data makes common schemas even more necessary.
体现在文章结论的最后:“对大数据的增长兴趣使得对共同schema的需求比以往更相关。当数据科学家探索数据驱动分析的价值,需要从不同来源把数据抓在一起,因此对共享词表的需求正在增长。我们希望schema.org将对此有所贡献。”

【结构化数据标准的发展】
早期(1997年前?)有XML和MCF (Meta Content Framework)。
1997-2004年间针对语法和数据模型开发了不同的标准(RDF、RDFS和OWL)。针对具体行业提出许多词表,某些得到广泛采用,如hCard、FOAF。不同垂直领域的词表完全独立,导致大量重复和混乱。更糟的是,不同搜索引擎推荐不同的词表。
针对此问题,2011年主要搜索引擎公司Bing, Google, Yahoo(及后来加入的Yandex)创建Schema.org,目的是提供跨领域的单一词表。最初是三个公司关起门来做决定,后来逐步开放,先是在W3C公共论坛讨论,后来改变模式为所有决定都公开做出[在GitHub上],有一个来自资助公司、学界及W3C的指导委员会。
Schema.org发布时297个类、187个关系,四年后增加至638个类、965个关系。

愿景图“来自多个网站的知识库样例”比以前看到过的图更具说明性

【Schema.org应用】
– 首个应用是谷歌搜索结果的丰富片断(Rich Snippets)在2011年转用Schema.org词表。[snippet最早由雅虎采用、谷歌跟进,当时依据垂直领域词表]
– 用作谷歌知识图谱(Knowledge Graph)的数据源,显示在检索结果侧栏的事实面板。
– 电子邮件。预订饭店、旅馆、航班等电邮嵌入Schema.org标记,电邮辅助工具可抽取结构化数据,通过手机通知、地图、日历等使用。Gmail和Google搜索产品使用此数据提供提醒,如订餐会基于饭店位置、用户、交通状况等,触发提醒去饭店。
微软小娜(Cortana)通过电邮讯息利用schema.org
Pinterest利用Schema.org提供针对菜谱、电影、文章、产品或地点的丰富钉板(rich pins)。
苹果的Searchlight/Siri使用Schema.org提供搜索特性,包括集成评分、供应者、产品、价格、互动计数、机构、图像、电话号码及潜在的网站搜索行动。还用于新闻RSS。

【采用统计及原因分析】
在100亿网页的样本中,31.3%网页有Schema.org标记,1年前是22%。含有标记的网页平均参引6个实体、作出26个逻辑断言。估计至少1200万网站使用Schema.org标记。结构化数据标记现在与Web本身是一个数量级的了。
快速增长的原因是第三方工具的扩展支持,如Drupal和Wordpress,以及垂直内容管理系统(如Bandsintown和Ticketmaster)。

【设计决策:成功原因分析】
设计Schema.org的驱动因素是方便站长发布其数据。总体上,设计决策把更多负担放在标识的消费者。
– 支持多种语法:RDFa、JSON-LD、Microdata
– 多态性:关系/属性可以有多个定义域、多个值域(减少不必要的类)
– 实体参引:只有非常少的部分要求唯一URI
– 增量复杂性:从简单开始,逐步增加表达性。受实用性引导,定义从不为追求完美模型而改变,但回应来自发布者和消费者的反馈。
– 清理:清除无有意义使用的术语[类似文献保障原则]

【扩展】
保持最通用为核心,其他作为扩展。
参见:Schema.org扩展机制(及汽车&书目扩展)

———-关联数据的分割线———-
【对关联数据现状的基本判断】
自2006年,“关联数据”口号重定向W3C的RDF社区,从强调语义网本体和规则语言,到开放数据活动和实践数据共享。
关联数据宣传已经成功地从各种公共部门和开放数据源引起了大量以RDF表达的公开数据(如图书馆、生命科学和政府)。但是,强调标识符调和、复杂的最佳实践规则(包括HTTP的高级使用)、使用任意数量的部分重叠词表(schema),限制了关联数据实践在专业信息管理者以外领域的成长。关联RDF数据发布实践没有在广泛的Web得到采用。
(与“从语义网到知识图谱——语义技术工程化的回顾与反思”文章的认识一致。参见:知识图谱、语义网、关联数据;另见:关联数据注意事项

【与关联数据的异同】
Schema.org分享很多关联数据社区方法:使用相同的数据模型和标记语言(RDFS)和语法(如JSON-LD和RDFa),分享很多相同的目标。也分享了关联数据社区对语义网旗下实施的很多学术工作中发现的对过早成熟的形式主义的怀疑(规则系统、描述逻辑等)。尽管Schema.org也避免假定这类基于规则的处理会是普通的,但它不同于典型的关联数据指引,假定来自Web的结构化数据能在应用中利用前,通常会需要不同类型的清理、调和及后处理。【换言之,对Schema.org,数据清洗不是必要的——想起情报检索语言的前控和后控】

关联数据的目标更高,并因此带到Web的数据源数量很小、然而其质量往往很高。这两种方法相结合提供了很多的机会——例如,专业发布关联数据常能规范描述来自更广泛主流Web的schema.org描述中提及的实体。【公共部门继续承担需要更多费用的专业工作】

GS1词表:Schema.org的第一个外部扩展

schema博客2016年2月22日宣布,欢迎GS1 Web词表成为首个schema.org外部扩展。(关于外部扩展,参见:Schema.org扩展机制(及汽车&书目扩展)(2016-2-18)

GS1(Global Standards)在我国称为“国际物品编码协会”(我国对应机构为“中国物品编码中心”),是商品标识码(如条码)的分配机构。
《GS1 Web词表标准》1版发布于2014年6月17日,定义用于GS1智能搜索的GS1词表。第一阶段包含面向消费者的特性,涉及食品、饮料、烟草、服装鞋类、医疗保健和核心项目。2015年11月已发布1.6.1版 (贡献者中有众多GS1 China的国人)。使用的命名空间为gs1:(gs1.org/voc/)。
目前被schema博客称为外部扩展的《GS1 Web词表》采用相同命名空间,为0.90版(2016-2-22),schema.org的影响力由此可见。同时,鉴于GS1在国际商业领域的地位,尽管两个词表间还存在分歧,schema.org博客用“里程碑”这样的高度评价,也是完全可以理解的。这是schema.org及关联数据在商业领域应用的一个重要进展

博文翻译如下:
schema blog: GS1 Web vocabulary: welcoming the first schema.org external extension (MONDAY, FEBRUARY 22, 2016)
自2.0版发布【2015-5-12】,schema.org越来越重视通过广泛的社会合作网络创建的扩展。今天,我们庆祝扩展框架开发中的一个重要的里程碑:GS1发表其Web词表的最初发布。……词表本身发布在gs1.org/voc/。
GS1的智能搜索行动一直与schema.org界合作(在W3C和Github),创建一个基于Web的结构化数据词表,扩展schema.org,以支持更丰富的产品数据描述。不同于我们的托管扩展(如书目和汽车),经过评审,版本控制及发布作为 schema.org本身的一部分,外部扩展如GS1是完全独立的,有其自己的工作流程、评审过程和基础结构。
GS1的情况是,扩展词表建立在现有B2B标准的扩展集之上。尽管这意味着在某些地方,在GS1术语和schema.org间有某些分歧,但我们享有共同的方法,建立在schema.org核心词表之上,建立在主要的W3C基础标准如JSON-LD。
随着工作的发展,我们期望schema.org和GS1词表的结合,会提供十分丰富的在线产品描述,供Web搜索中使用,结合GS1术语的描述深度,和schema.org的广泛覆盖。我们将通过schema.org的W3C社区小组,继续与GS1团队合作,记录结合schema.org术语与新GS1词表的最佳实践,既充分利用JSON-LD的技术特性,又逐步改善,以使我们的词表更接近对齐。尽管还有很多有待探索,本周的里程碑仍然是重要的,因为这是对schema.org的第一个大型外部扩展。

———GS1 Web Vocabulary (网页翻译)———
GS1智能搜索标准让行业得益于:
– 给消费者更佳的搜索结果,以发现他们需要的产品和信息
– 在联机搜索中其产品的更大可见性
– 改进的、准确的联机产品信息
– 经由面向消费者的移动设备和网站,共享产品信息,最终驱动销售
本网站记录GS1智能搜索的一个技术方面——GS1Web词表。GS1Web词表的初始焦点是面向消费者的属性,针对服装、鞋、食品饮料/烟草,以及对所有产品通用的属性。食品/饮料/烟草属性将包含与EU1169相关的属性,如定义在GDSN和GS1来源标准中的。此外,词表包括缔约方和产品提供方的定义(产品提供由一个缔约方对一个价格)。属性及其定义来自现有GS1标准,包括GDSN、GS1来源和GPC。对本规则的期望是包含提供者的定义,在上述任何标准中都不存在。

Schema.org扩展机制(及汽车&书目扩展)

Schema.org,2011-6-2发布,2013-04-05发布1.0版,2015-5-12发布2.0版(根据官网Releases)。2.0版采用新的扩展机制,对扩展词表的使用也有影响。摘译部分如下,示例略【方括号中为本人理解】。

Schema.org扩展机制Extension Mechanism
– 动机
Schema.org提供核心、基本词表,描述最通用web应用需要的实体。常常需要建立在核心(词表)之上的更专业和/或深入的词表。扩展机制方便创建这样的附加词表。
对大多数扩展,期望少部分常用术语集在核心schema.org,更专业术语的长尾在扩展中。
各领域的扩展,少部分通用术语可能进入基本核心词表,其他作为附加词表单独存在

– 扩展类型
两种扩展:评审/托管扩展和外部扩展。两种扩展典型地增加子类和属性到核心(词表)。属性可加到现有和/或新类。更一般地,它们都覆盖在核心的顶部,因此也可增加定义域/值域、超级类等。扩展必须与核心schema.org一致。核心(即http://schema.org)中的每项也在每种扩展中。扩展可以在概念中相互交叉(如定义金融机构术语的两个扩展,一个称为FinancialBank、另一个称为FinancialInstitution),但不应该重用相同术语表示完全不同意思(如不应该有两个扩展,一个使用Bank指河岸、另一个指金融机构)。
扩展包含核心中的所有项,即扩展词表=核心词表+扩展

– 评审/托管扩展
每个评审扩展(比如e1)得到它本身的schema.org命名空间块:e1.schema.org。扩展中各项由该扩展的创建者创建和维护。评审扩展与建议有很大不同。建议如果经修改被接受,或者可进入核心,或者成为一个评审扩展。
【扩展永远是扩展,不会成为核心词表的一部分。扩展采用不同的命名空间块xx.schema.org,从例示看,与schema.org命名空间一同使用时,采用xx:前缀】

– 外部扩展
有时第三方(如应用开发者)可能需要创建特定于其应用的扩展。如Pinterest想要扩展schema.org的“Sharing”概念为“Pinning”。这种情况,可创建schema.pinterest.com放其扩展,具体说明如何链接到核心schema.org。这些称为外部扩展。
也有时第三方本身想自己托管一个广泛适用的扩展。在这种情况下,该扩展可采用与评审扩展相同的反馈处理,但可托管在第三方网站。
BiblioGraph.net应该属于第三方的外部扩展,参见:OCLC低调注册BiblioGraph.net扩展Schema.org(2014-12-1)】

– 站长如何工作
所有schema.org核心、所有评审扩展都可由schema.org网站得到。每个扩展都会由它与核心的每个触点而链接到。因此,如果一个扩展(比如与法律事务有关)创建legal.schema.org/LegalPerson,为schema.org/Person子类,则Person将链接到LegalPerson。典型地,网页/电邮只用单一扩展(如法律),这种情况下,legal.schema.org代替schema.org,使用legal.schema.org和schema.org中的所有词表。
【由于扩展包含核心的所有项,可直接用评审命名空间包含核心命名空间;但(后面)样例说明称,同时使用两个命名空间对消费更好】

– 创建扩展需要做什么
希望扩展创建者不必担心为其扩展运行一个网站。一旦扩展被批准,只需简单上传一个带其扩展的文档到github某个文件夹。修改通过相同机制。
由于schema.org源代码可公开获取,我们鼓励外部扩展创建者使用相同应用。
参见:私人定制版Schema.org

——— Schema.org的评审/托管扩展 ———
目前有两个评审/托管扩展,都还不是正式版,而是pre-final preview release:

1、汽车扩展:auto.schema.org
– 类型(类)Types (3)
BusOrCoach, Motorcycle, MotorizedBicycle
– 属性 Properties (20)
accelerationTime, acrissCode, bodyType, emissionsCO2, engineDisplacement, enginePower, engineType, fuelCapacity, meetsEmissionStandard, modelDate,payload, roofLoad, seatingCapacity, specialUsage, speed, tongueWeight, torque, trailerWeight, weightTotal, wheelbase

2、书目扩展:bib.schema.org
– 类型(类) Types (11)
Atlas, Audiobook, Chapter, Collection, ComicCoverArt, ComicIssue, ComicSeries, ComicStory, CoverArt, Newspaper, Thesis
– 属性 Properties (18)
abridged, artist, colorist, duration, inSupportOf, inker, letterer, pageEnd, pageStart, pagination, penciler, publishedBy, publisherImprint, readBy, translationOfWork,translator, variantCover, workTranslation
– 枚举值(取值词表) Enumeration values (1)
GraphicNovel【图书格式类型,漫画小说】
【参见:解惑Schema书目扩展(2014-1-29)】

via Richard Wallis: Schema.org in Two Parts: From Use to Extension. DCMI/ASIS&T Webinar, November 18, 2015 & December 2, 2015