8

次のように、型オブジェクトの空の属性を強制できます。

{
   "description": "voice mail record",
   "type": "object",
   "additionalProperties": false,
   "properties": {}
}

ここで説明したように。

今、属性を検証したい

  1. オブジェクト型であり、
  2. 定義済みのプロパティはありません
  3. 文字列型または数値型のプロパティを持つことができます
  4. 空であってはなりません

空でないこと (ポイント 4) を強制することは、私には推測できません。これは、上記の例のように空を強制するのとは多少反対です。現在の json スキーマの抜粋は次のようになります。

"attribute": 
{
    "type": "object",
    "additionalProperties": { "type": ["string","number","integer"] }
}

しかし、上記は空でないことを強制しません。どうすればこれを達成できますか?

4

1 に答える 1

15

あなたが望むもののようminPropertiesに聞こえます。

{
    "type": "object",
    "additionalProperties": {"type": ["string", "number", "integer"]},
    "minProperties": 1
}

maxPropertiesリンク先の反対の質問の代替ソリューションとして使用できるもあります。

于 2016-02-26T13:04:27.757 に答える