問題タブ [json-schema-validator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2061 参照

json - JSON スキーマ - 外部キー (FK) の検証

以下の JSON スキーマがあります。

スキーマ A:

スキーマ B :

外部リンク/参照を使用して、JSON スキーマに基づいて整合性チェックのようなものを実行する方法があるかどうかを調べようとしています。例: entityBId = 1のオブジェクト A を受信した場合、リンクの href で宣言されたエンドポイントで GET を実行してこのエンティティ B を取得し、受信した ID から有効なオブジェクトがあるかどうかを確認します。これは詳細な検証のように実行され、DB スキーマが定義されていないシナリオで役立ちます。

0 投票する
1 に答える
6639 参照

jsonschema - 外部 JSON スキーマからのすべての定義のインポート

JSON スキーマを参照して再利用するために、 JSON ポインターを試してきました。

例に従って、別の JSON スキーマで宣言された特定のプロパティを参照でき、すべてが期待どおりに進みますが、明示的に参照することなく、別の基本スキーマの定義で基本 JSON スキーマを拡張する方法が見つかりませんでしたすべてのプロパティ。

これは便利なようですが、可能かどうかの兆候は見つかりませんでした。

基本スキーマを想像してくださいthings:

の両方のプロパティを再利用する、より具体的なpersonスキーマが必要な場合は、次のthingようにします。

ただし、このアプローチには 2 つの問題があります。

  1. 超定義が更新されると、依存スキーマも更新する必要があります
  2. これらすべての参照を手動で維持するのは面倒/冗長になります
  3. ルール ( などrequired: name) は、参照された定義の一部ではありません

単一のグローバル参照を使用して、次の効果的なJSON スキーマを取得する方法はありますか?

$ref次のように、スキーマのルートに含めてみました。

これには、プロパティを継承する効果がありthingますが、追加のプロパティはすべて無視されます。

0 投票する
1 に答える
2316 参照

json - JSON スキーマの重複プロパティ

スキーマでのキーの複製について質問があります。これは例です:

main.schema.json

baseResource.json

そして、これにはどのような値が適切ですか?値は (メイン スキーマに従って) ブール値のみにするか、ブール値または文字列にすることができます (それが正しいベース リソースへの参照)。値をブール値以外にすることを許可しない JSON バリデーターを使用しています。JSON 仕様で多くのことを検索しましたが、それに関する情報はありません。

0 投票する
1 に答える
369 参照

json - jsonschema 検証で依存関係が機能しない

以下は、jsonschema 4.0 と互換性のある私の json スキーマです。

dependenciesそこでは機能していません。つまり、credit_card の詳細が提供されるたびに、生成されたフォームはbilling_address も要求する必要があります。フィールドは適切に表示されますが、credit_card の詳細が入力されても検証エラーは表示されません。 ここに画像の説明を入力

interaction Am I doing it wrong or there is some version issue の検証を有効にしました。今のところ $schema を指定していないことに注意してください。

何か役に立ちますか?

0 投票する
1 に答える
545 参照

json - json スキーマの定義キーワードの使用法

json スキーマでの定義の使用法を教えてください。私は彼らのウェブサイト を調べましたが、多くの情報を得ることができませんでした.

どんな助けでも価値があります。