JSONSchema-必要なプロパティが機能しない

ヤクブ

私はJSONを初めて使用するので、本当に単純なものを見逃しても驚かないでしょうが、スキーマで何が間違っているのか、なぜそれがいくつかのことを間違って検証するのかを見つけようとしましたが失敗しました。これは私のスキーマです:

apartment_schema = {
    "type": "object",
    "properties": {
        "Apartments": {"type": "object"},
        "properties": {"ap1": {"type": "object",
                                 "required": ["count", "ages"],
                                 "properties": {"count": {"type": "number"},
                                                "ages": {"type": "array", "items": {"type": "number"}}},
                                 "additionalProperties": False,
                                 },
                       "ap2": {"type": "object",
                                "required": ["count", "ages"],
                                "properties": {"count": {"type": "number"},
                                               "ages": {"type": "array", "items": {"type": "number"}}},
                                "additionalProperties": False,
                                },
                       "ap3": {"type": "object",
                                     "required": ["count", "ages"],
                                     "properties": {"count": {"type": "number"},
                                                    "ages": {"type": "array", "items": {"type": "number"}}},
                                     "additionalProperties": False,
                                     },
                       },
        "required": ["ap1", "ap2", "ap3"], 
        "additionalProperties": False,
            },
    "additionalProperties": False,
    "required": ["Apartments"]
}

json.loadsを使用して文字列を検証し、次にこのスキーマに対してvalidate関数を使用しようとしていますが、これを試みると、次のメッセージが表示されます。

jsonschema.exceptions.SchemaError: ['ap1', 'ap2', 'ap3'] is not of type 'object', 'boolean'

これが私がそれを検証しようとする方法であり、何に対してです:

def validateJson(jsonData):
    try:
        jsonschema.validate(instance=jsonData, schema=apartment_schema)
    except jsonschema.exceptions.ValidationError:
        return False
    return True
print(validateJson(json.loads("{\"Apartments\": {\"ap1\": {\"count\": 1, \"ages\": [40]},\"ap3\": {\"ages\": [10,15]}}}"))

この検証は成功し、スキーマから必要な部分を1つだけ削除しても、必要なパラメーター(カウント)の1つが欠落しているため、合格すべきではありませんが、エラーメッセージは表示されません。別の文字列を入力すると、エラーが発生しなくても、他の「必須」フィールドは機能していないように見えます。私はここで間違って何をしていますか?

エーテル

properties「Apartments」プロパティ宣言のすぐ下にあるべきではない追加のキーワードがあるため、その下のすべてが間違ったレベルで解析されています。プロパティ「ap1」、「ap2」、「ap3」は、データ内で「アパート」と同じレベルにある必要があると思いますか?

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

jsonschemaが必要なプロパティがない場合にエラーをスローしない

分類Dev

必要なおよび/または条件付きで必要なプロパティのjsonschema検証

分類Dev

jsonschemaと日付タイプ

分類Dev

jsonschema文字列プロパティの複数の値

分類Dev

jsonschemaのアイテムとプロパティの違いは何ですか?

分類Dev

JSONSchema-親プロパティに依存する必須プロパティ

分類Dev

jsonschema-静的プロパティを持つ動的プロパティ

分類Dev

jsonschemaが拡張され、追加のプロパティはありません

分類Dev

JsonSchema:別のプロパティの値に基づいてタイプを検証します

分類Dev

jsonschema Draft 0.7は、値に応じてネストされたオブジェクトに必要なプロパティ

分類Dev

JsonSchema.NETを使用してプロパティを要求するにはどうすればよいですか?

分類Dev

必要なプロパティがリピーターで機能しない

分類Dev

jsonschema:オブジェクト配列の一意のプロパティ

分類Dev

JSONschemaとXSDの同等物を調整するのが難しい

分類Dev

CodeIgniterUndefinedプロパティのロードが機能しない

分類Dev

JsonConverterがプロパティ属性として機能しない

分類Dev

あるjsonschemaを別のjsonschemaにリンクするにはどうすればよいですか

分類Dev

JSONSchemaのadditionalPropertiesフィールドのさまざまなタイプ

分類Dev

Mavenプラグインjsonschema2pojo-maven-pluginがすべての定義のpojoを生成しない

分類Dev

log4jプロパティ:LevelMatchFilterが機能しない

分類Dev

justify-contentプロパティが機能しない

分類Dev

SpringBoot構成プロパティが機能しない

分類Dev

DialogFragmentsetCancelableプロパティが機能しない

分類Dev

SpringBoot構成プロパティが機能しない

分類Dev

SpringBoot構成プロパティが機能しない

分類Dev

Androidの標高プロパティが機能しない

分類Dev

iFramesrcプロパティと相対URLが機能しない

分類Dev

MVC無効SelectListItemプロパティが機能しない

分類Dev

jQueryAnimateがbackground-colorプロパティで機能しない

Related 関連記事

  1. 1

    jsonschemaが必要なプロパティがない場合にエラーをスローしない

  2. 2

    必要なおよび/または条件付きで必要なプロパティのjsonschema検証

  3. 3

    jsonschemaと日付タイプ

  4. 4

    jsonschema文字列プロパティの複数の値

  5. 5

    jsonschemaのアイテムとプロパティの違いは何ですか?

  6. 6

    JSONSchema-親プロパティに依存する必須プロパティ

  7. 7

    jsonschema-静的プロパティを持つ動的プロパティ

  8. 8

    jsonschemaが拡張され、追加のプロパティはありません

  9. 9

    JsonSchema:別のプロパティの値に基づいてタイプを検証します

  10. 10

    jsonschema Draft 0.7は、値に応じてネストされたオブジェクトに必要なプロパティ

  11. 11

    JsonSchema.NETを使用してプロパティを要求するにはどうすればよいですか?

  12. 12

    必要なプロパティがリピーターで機能しない

  13. 13

    jsonschema:オブジェクト配列の一意のプロパティ

  14. 14

    JSONschemaとXSDの同等物を調整するのが難しい

  15. 15

    CodeIgniterUndefinedプロパティのロードが機能しない

  16. 16

    JsonConverterがプロパティ属性として機能しない

  17. 17

    あるjsonschemaを別のjsonschemaにリンクするにはどうすればよいですか

  18. 18

    JSONSchemaのadditionalPropertiesフィールドのさまざまなタイプ

  19. 19

    Mavenプラグインjsonschema2pojo-maven-pluginがすべての定義のpojoを生成しない

  20. 20

    log4jプロパティ:LevelMatchFilterが機能しない

  21. 21

    justify-contentプロパティが機能しない

  22. 22

    SpringBoot構成プロパティが機能しない

  23. 23

    DialogFragmentsetCancelableプロパティが機能しない

  24. 24

    SpringBoot構成プロパティが機能しない

  25. 25

    SpringBoot構成プロパティが機能しない

  26. 26

    Androidの標高プロパティが機能しない

  27. 27

    iFramesrcプロパティと相対URLが機能しない

  28. 28

    MVC無効SelectListItemプロパティが機能しない

  29. 29

    jQueryAnimateがbackground-colorプロパティで機能しない

ホットタグ

アーカイブ