Altova XMLSpy 2023 Enterprise Edition

Avro数据块的结构在Avro Schema中指定。它指定需要哪些数据字段以及如何表示值。您可以在此处找到有关Avro Schema及其规范的信息。

 

请注意以下几点:

 

Avro Schema以JSON格式创建

Avro Schema可以是:JSON字符串、JSON对象或JSON数组

Avro Schema可以包含四个特性:namenamespacetypefields

有八种基元数据类型:nullbooleanintlongfloatdoublebytesstring

有六种复杂类型:recordsenumsarraysmapsunionsfixed

基元类型没有特性;每个复杂类型都有自己的特性集

 

有关Avro Schema的更多信息,请参见Avro Schema规范

 

示例

下方给出了一些简单的Avro Schema示例,每个示例都包含相应的JSON格式的Avro数据片段。请注意,Schema定义了一个特定的结构。在某些情况下,当定义的结构被多次实例化时,生成的输出可能不是有效的JSON文档。例如,可以在Schema中定义JSON对象的结构。如果JSON对象被多次实例化,则根据Avro Schema,每个单独的对象都可能是有效的,但是整个文档将不是有效的JSON文档,因为没有容器对象。如果需要有效的JSON文档,您可能需要重新编写Avro Schema来验证JSON对象数组。请比较下方的示例4和示例5。

 

 

 

 

Avro Schema文件类型

如果您希望使用XMLSpy中Avro相关的编辑和验证功能,XMLSpy必须能够将文件识别为Avro Schema。如果一个文件的扩展名在XMLSpy的“选项”对话框(工具 | 选项 | 文件类型)中被定义为Avro Schema,则文件将被识别为Avro Schema。XMLSpy的默认设置将带有一个文件扩展名.avsc—的文件视为Avro Schema文件。如果您希望创建指定Avro Schema文档的其他文件扩展名,请将这些文件扩展名作为Avro Schema扩展名添加到“选项”对话框的列表中。

 

创建和编辑Avro Schema

在XMLSpy中,您可以通过将Avro Schema文件扩展名指定为其文件类型来将一个新文件创建为Avro Schema。XMLSpy在您输入时提供智能编辑功能。这些包括上下文相关的关键词建议、自动输入括号对和引号对、语法着色和自动完成关键词。此外,还有三个输入助手:JSON属性、JSON值和JSON实体。在这些输入助手中可用的条目都是上下文相关的。双击一个条目会将其插入到当前光标位置。然后您可以使用验证 | 验证XML(F8)菜单命令根据Avro Schema规范对文件进行验证。

 

© 2017-2023 Altova GmbH