JSON, JSON Schema
JSON(JavaScript对象表示法)是一种使用JavaScript语法的轻量级格式,用于存储和交换数据。与XML格式一样,它是一种可读的纯文本格式。由于JSON可以被任何编程语言读取和使用,它已被广泛用作数据交换格式,尤其是在Web上。
作为其IDE功能的一部分,XMLSpy支持编辑和验证JSON数据文档(实例文档),以及创建语法和语义上正确的JSON Schema文档。
JSON5
JSON5 是对JSON的扩展,它还具有一些ECMAScript 5扩展(有关更多信息,请参见json5.org)。JSON5是JavaScript的一个严格的子集,不添加任何新的数据类型,并且可以处理所有现有的JSON内容。
所有可用于JSON实例文档的XMLSpy功能也适用于JSON5实例文档。但是,请注意JSON5和JSON之间的主要区别,以及XMLSpy处理这两种格式的方式:
•JSON5不是JSON的官方继承者。因此它有自己的文件扩展名:json5。
•默认情况下,XMLSpy将带有.json文件扩展名的文件识别为JSON实例文档,带有.json5文件扩展名的文件识别为JSON5实例文档。
•JSON5实例文档可以根据JSON Schema进行验证。
在本文档中,除非另有说明,JSON实例指的是JSON和JSON5实例文档。另请参见JSON5和JSON之间的区别部分。
XMLSpy中的JSON和JSON Schema
这两种文档类型,JSON实例和JSON Schema,都是以JSON格式编写的,并必须遵循JSON格式和验证规则。这两种文档类型(实例和Schema)通常都具有.json文件扩展名。JSON实例可以在文本视图和网格视图中编辑,JSON Schema文档可以在这两个视图以及JSON Schema视图(图形模式编辑器)中进行编辑。
XMLSpy为处理JSON实例和JSON Schema文档提供以下支持:
•在文本视图中,语法着色和语法检查;JSON Schema和实例文档中的自动完成功能(如果这些具有Schema关联);折叠边距;以及结构标记。所有这些功能都简化并加快了有效的JSON实例和JSON Schema文档的编辑。在文本视图中,可以对实例和Schema文档进行验证。
•在网格视图中,表格网格结构有助于更好地直观呈现文档结构。您可以直接在网格视图中进行编辑。您还可以根据编辑需要在文本视图和网格视图之间切换。在网格视图中,可以对实例和Schema文档进行验证。
•在文本视图和网格视图中对JSON实例文档进行验证。验证是根据在信息窗口中分配的JSON Schema执行的。
•JSON Schema视图以图形方式呈现JSON Schema。它允许您使用拖放功能(除了文本输入)来快速创建JSON Schema。视图中的输入助手提供编辑帮助。此外,还会不断检查Schema的有效性并标记错误。
JSON实例:打开现有的实例文档并创建新的实例文档
•在选项 | 文件类型部分中,您可以设置打开SON/JSON5实例文档的默认视图(文本视图或网格视图)。现有的JSON/JSON5文档将在您选择的默认视图中打开。您可以随时在文本视图和网格视图之间切换。
•要创建一个新的JSON或JSON5实例文档,请单击文件 | 新建,并选择json:JavaScript Object Notation或json5:JSON with ECMAScript 5 extensions。系统会提示您为新实例文件选择JSON Schema文件。在分配Schema时,将在信息窗口中输入分配。新实例文档将根据选项 | 文件类型选项卡中所做的设置在文本视图或网格视图中打开。
JSON Schema:打开现有的Schema并创建新的Schema
•现有的JSON Schema在JSON Schema视图中打开。您可以随时切换到文本视图或网格视图。
•要创建一个新的JSON Schema文档,请单击文件 | 新建,并选择json:JSON Schema。新的JSON Schema文档将在JSON Schema视图中打开,文档开头带有\$schema关键词。您可以随时切换到文本视图和网格视图。
本部分的小节中对所有这些视图(文本、网格和JSON Schema)都进行了描述。
本部分内容
本部分分为以下几个部分:
•JSON数据介绍了JSON文档的基础知识。
•JSON Schema描述了JSON Schema及其工作原理。
•JSON Lines和带注释的JSON提供了XMLSpy支持的另外两个JSON规范的信息。
•文本视图中的JSON文档展示了如何使用文本视图中有关JSON的功能。
•网格视图中的JSON文档描述了如何在网格视图中编辑JSON文档。
•JSON Schema视图介绍了该视图中的JSON Schema编辑功能,以及如何在创建JSON项目时使用它。
•验证JSON数据/文档描述了如何将JSON Schema分配给JSON文档,以及如何验证JSON文档。
•插入JSON片段描述了如何快速将来自外部源的JSON文本片段插入JSON文档。
•使用XSLT/XQuery进行JSON转换介绍了如何使用XPath/XQuery 3.1查询JSON文档。
•针对JSON的XQuery表达式大致介绍了如何在JSON文档中使用XQuery。
•从JSON实例生成JSON Schema描述了如何从实例生成Schema。
•从JSON Schema生成JSON实例描述了如何从Schema生成实例。
•在JSON和XML之间转换描述了如何在XMLSpy中在在JSON和XML之间转换。