W3C 物联网如何将 JSON Schema 带入物联网
挑战
物联网(IoT)是通过互联网交换数据的物理“智能”对象的网络。虽然通信和互操作性本质上是物联网的核心,但定制或专有解决方案的出现导致设备由于数据交换机制的不同而无法相互通信。
为了集成这些不同的设备,开发人员必须使用不断增长的协议、序列化格式和 API 规范集。这会导致重复、不可扩展和容易出错的工作,难以自动化。
虽然像 OpenAPI 和 AsyncAPI 这样的技术在 Web API 的背景下在很大程度上解决了这个问题,但它们在描述非 HTTP 和多协议设备网络方面还不够,并且没有考虑基于其在物理世界中的意义的不同交互模式。
解决方案
为了解决这些问题,W3C 物联网致力于提供利用 JSON Schema 的标准化构建块。
JSON Schema 用于验证称为 事物描述 的面向网络的物理实体的功能的描述,以及以多协议方式对物联网消费者和生产者发送的数据进行建模和描述。
W3C 物联网规范自第 4 版起就支持 JSON Schema,甚至第一个草案版本也已经考虑了物联网设备的数据模型。“目前,我们使用的是 JSON Schema 第 7 版,预计在 2023 年 2 月开始新章程时将迁移到 JSON Schema 2020-12 或更新版本,”西门子研究科学家兼 W3C 规范编辑 Ege Korkan 说。
“我们观察到 JSON Schema 这些年来变得越来越稳定,Postman 对社区的支持让我们对它更加有信心,”Ege Korkan 继续说道。
JSON Schema 提供了激动人心的功能,更重要的是,这些功能在不同的实现中变得越来越一致。例如,Ege Korkan 补充说:“JSON Schema 词汇表非常有前景,我们计划与语义网技术结合进一步探索它们。”
影响
W3C 物联网依赖于 JSON-LD 来链接已经存在于网络上的词汇表和本体,例如 [SAREF][#saref]、[计量单位][#units-of-measure] 和 [Schema.org][#schema-org]。由于基于 JSON 数据模型,JSON Schema 在将这两种技术作为单个规范的一部分集成时,非常适合 JSON-LD。
采用 JSON Schema 意味着 W3C 物联网不需要在发明另一种模式语言方面投入精力。由于 JSON Schema 的流行,现有的工具通常可以重复使用,而不是为社区可能感兴趣的所有编程语言实现自定义解析器、验证器、代码生成器和 UI 生成器。
JSON Schema 已被证明是创建针对 W3C 物联网的更高级工具的基础。例如,社区开发了一个名为 testbench 的工具,该工具利用事物描述中的 JSON Schema 定义为压力测试和渗透测试生成匹配的有效负载。
鉴于使用 JSON Schema 生成基于 Web 的表单越来越流行,W3C 物联网规范可以用来自动生成仪表板和用户界面,以与事物描述建模的对象进行交互。
主要影响结果
对于像 W3C 物联网这样的标准来说,最终的成功衡量标准是采用率,而社区采用率不是你能“设计”出来的东西。Ege Korkan 评论说:“由于我们采用了 JSON Schema,熟悉它的开发人员在学习 W3C 物联网标准时学习曲线会更短。”
“在我博士期间,我的硕士工程专业的学生必须熟悉 W3C 物联网。这些学生通常需要一周时间才能完成我的 教程。如果他们知道 JSON Schema,那一个星期就会变成两天,”Ege Korkan 说。
W3C 物联网
万维网联盟 (W3C) 是 Web 中使用的绝大多数标准背后的标准化组织。W3C 物联网工作组和兴趣组在 W3C 中负责物联网的标准化工作。
物联网组旨在创建一个互操作性层,以便不同的物联网平台、协议和标准能够协同运行。
这项工作始于 2013-2014 年在物联网社区小组中的讨论。它在 2015 年成为一个兴趣组,收集用例并定义要进行的标准化工作。自 2016 年以来,工作组一直在制定物联网的不同标准,2019 年发布了事物描述和架构建议的第一个版本,今年年底还将发布更多版本。
在撰写本文时,工作组由代表 36 个组织的 96 名参与者组成,兴趣组由代表 48 个组织的 131 名参与者组成。
入门
W3C 物联网工作组邀请您利用您现有的 JSON Schema 知识,通过使用 W3C 物联网规范和工具与物联网进行互动。您身边可能已经有一台智能设备,只是它没有事物描述!
如果您编写了自己的事物描述,您可以使用 Node.js 物联网实现 以编程方式与您的设备进行交互,或者通过 Node-RED 集成进行交互。
要了解更多信息,请访问 文档、观看 介绍视频、查看作为 事物描述规范 一部分提供的许多示例,并在 事物描述 Playground 应用程序中尝试它们。
感谢西门子 AG慕尼黑物联网研究员 Ege Korkan、W3C 物联网工作组和兴趣组以及 W3C 营销和传播团队的 Coralie Mercier,允许我们与大家分享这个案例研究。
封面图片:Hello WoT © 2022 by desertmonitor OÜ 在 CC BY-ND 4.0 许可下获得授权