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

私人定制版Schema.org

Richard Wallis是WorldCat应用schema.org及schema书目扩展的重要人物。他2012.4-2015.7任职于OCLC,现为独立咨询人。
在去年底DCMI/ASIS&T的两次网络会议上(2015-11-18和2015-12-2),他介绍了Schema.org及扩展机制,视频与PPT可下载:
Schema.org in Two Parts: From Use to Extension
Part 1: Fit For a Bibliographic Purpose(适合书目用途):我感兴趣的部分包括:SchemaBibEx、BiblioGraph.net、Schema.org 2.0扩展机制
Part 2: Extending Potential and Possibilities(扩展潜力与可能性 ):后面三分之一有应用各种软件及信息:应用schema.org的各种工具、扩展schema.org的有用链接,以及最后总结的schema.org概要。

Richard Wallis本月发长博文,继续此一主题。
Data Liberate: Evolving Schema.org in Practice Pt1: The Bits and Pieces (February 10, 2016)
目前的第1部分针对“有建议,如何测试、分享并提交到schema.org社区”的问题。博文按步骤详述整个实际操作过程,并有丰富截屏。
昨天照猫画虎,把前半部分(从下载到本地、到发布到公开访问网址)操作了一遍。结论是,需要首先看前述网络会议第2部分,了解第76-98页PPT(扩展Schema.org有用链接)并下载述及的软件。另外还需安装Python 2.7(GAE配套),PPT及博文中均未提及。

操作准备:
1 帐号:Github、Google
2 软件安装
2.1 与Github交互的Git客户端
博文用命令行工具,我使用GitHub Desktop,Clone、Commit等下载、上传操作比命令行直观方便。GitHub Desktop带有命令行工具Git Shell,有些操作可使用。
2.2 Python 2.7(与GAE配套使用,要求先安装)
Python官网https://www.python.org/首页,下载处挂两个版本的链接,最新版3.5.1和2.7.11——猜想是因为GAE的缘故。
2.3 Google App Engine SDK(要求Python版)
Google App Engine SDK for Python

步骤概要(详见原博文):
1、登录Github,访问Schema.org repository,Fork(分叉,即在本人帐号下复制一份)
2、GitHub Desktop:clone(克隆,即复制到本机)
3、Git Shell:运行本地版本:dev_appserver.py schemaorg(须注意路径),完成后可以通过浏览器访问http://localhost:8080/,如同访问schema.org网站
4、生成共享公共版
(1)访问https://console.cloud.google.com/(登录Google帐号)创建新项目(对Schema.org,项目名通常以sdo-起始)
(2)修改本地克隆文件夹app.yaml文件,应用名改为项目名
(3)Git Shell:上传配置更新:appcfg.py update schemaorg(须注意路径,可能需要根据提示做其他操作)
(4)完成后即可用浏览器访问:http://项目名.appspot.com/
我的schema.org共享公共版:http://sdo-catwizard.appspot.com/ (Schema.org 2.2版,目前没有做任何修改)【可惜这个也是有墙的,可谓全程有墙陪伴】

原博后半部分的修改Schema.org步骤
1、本机修改
2、Git上传修改(add、commit) 至本人Github
3、Github网站:向Fork的原repo提出修改请求(New pull request)
Schema.org的新版本在处理请求清单后发布(Closed是处理完成的,Open是当前的)——完全参与式。