# Operationsa-Schema*是JSON Schema Draft 2019-09 (opens new window)的扩展,描述了亚马逊产品类型的属性和要求,如LUGGAGE
.
** Schema URI**: https://schemas.amazon.com/selling-partners/definitions/product-types/meta-schema/v1
词汇表URI: https://schemas.amazon.com/selling-partners/definitions/product-types/vocabulary/v1
Amazon产品类型定义Meta-Schema的实例可以利用JSON Schema Draft 2019-09 (opens new window).所支持的任何关键字和词汇,更多细节见https://json-schema.org/specification.html (opens new window)
除了标准的JSON Schema Draft 2019-09 (opens new window)词汇外,Amazon产品类型定义Meta-Schema的实例利用meta-schema中定义为自定义词汇的关键词.本文档概述了https://schemas.amazon.com/selling-partners/definitions/product-types/vocabulary/v1
URI的自定义词汇.
亚马逊产品类型定义Meta-Schema实例的消费者可以选择忽略自定义词汇,只使用标准的JSON Schema Draft 2019-09 (opens new window)词汇.这样做将验证亚马逊产品类型的大多数要求,但在提交时可能导致一些验证错误.
# Vocabulary
# editable
类型: "boolean"(布尔) 目的: 信息性的 描述: `可编辑'关键字表示是否可以改变现有项目的属性值.不可编辑的属性可能仍然需要有效的提交,但不能改变其原始值.
# enumNames
类型: array
(数组)
目的: 信息性的
描述: enumNames
关键字包含了一个相应的enum
值数组的显示标签数组. enumNames
数组中的显示标签与enum
数组中的值顺序相同.
# hidden
类型: boolean
.
目的: 信息性的
描述: hidden
关键字表明在亚马逊用户界面中是否应该隐藏一个属性. 隐藏或显示这些属性是由消费亚马逊产品类型定义元-Schema.的应用程序决定的
# maxUniqueItems
类型: 整数
目的: 验证
描述: 与selectors
关键字一起,maxUniqueItems
关键字值定义了一个数组中唯一项目的最大数量.
# minUniqueItems
类型: 整数' **目的**: 验证 **描述**: 与
selectors关键字一起,
minUniqueItems`关键字值定义了一个数组中唯一项目的最小数量
# maxUtf8ByteLength
类型: integer
(整数)
目的: 验证
描述: maxUtf8ByteLength
关键字值定义了以UTF-8字节.为单位的`字符串'值的最大长度
# minUtf8ByteLength
类型: 整数' **目的**: 验证 **描述**:
minUtf8ByteLength关键字值定义了以UTF-8字节.为单位的
字符串'值的最小长度
# selectors
- 类型:
数组'. **目的**: 验证 **描述**:
selectors关键字包含一个属性名称的数组,它定义了使一个对象唯一的属性组合. 默认情况下,JSON Schema根据对象的所有属性来确定数组中对象的唯一性. 当
selectors`被定义时,只有指定的属性被用来确定唯一性.
# 验证器实现示例
JSON Schema (opens new window)是一个允许你注释和验证JSON文档的词汇表.JSON Schema的作者并没有提供具体的工具来验证JSON Schema的文档,相反JSON Schema定义了工具应该如何验证JSON Schema的文档.
有多种付费的和开放的-源码的应用程序和库支持JSON Schema,参见https://json-schema.org/implementations.html (opens new window),以了解已知的实现列表.
以下参考验证器的实现提供了一些例子,说明如何使用特定的语言-开源库来验证Amazon产品类型定义Meta-Schema实例的自定义词汇.不需要使用这些特定的库或实例实现.亚马逊不为第三方JSON Schema库提供技术支持,这些只是作为例子提供.
# .NET
对于C# .NET应用,Newtonsoft Json.NET Schema (opens new window)库支持JSON Schema Draft 2019-09和自定义词汇. 以下例子演示了如何利用Newtonsoft Json.NET Schema (opens new window)库来验证具有Amazon产品类型定义Meta-Schema实例的有效载荷
Example Validator Implementation for .NET (opens new window)
# Java
对于Java应用程序,networknt/json-schema-validator (opens new window)库支持JSON Schema Draft 2019-09和自定义词汇. 以下例子演示了如何利用[networknt/json-schema-validator](https //github.com/networknt/json-schema-validator)库来验证带有Amazon产品类型定义Meta-Schema.实例的有效载荷
Example Validator Implementation for Java (opens new window)
# JavaScript
对于JavaScript应用程序(包括Node.js),[hyperjump-io/json-schema-validator](https //github.com/hyperjump-io/json-schema-validator)库支持JSON Schema Draft 2019-09和自定义词汇. 下面的例子演示了如何利用[hyperjump-io/json-schema-validator](https //github.com/hyperjump-io/json-schema-validator)库来验证具有Amazon产品类型定义Meta-Schema.实例的有效载荷
Example Validator Implementation for JavaScript (opens new window)