0

いくつかの構成ファイルを定義するために JSON を使用しており、それらをjson schemeで検証したいと考えています。私の問題は、いくつかのオブジェクトのキーが同じ JSON で定義された配列のアイテムのサブセットであることを確認したいということです:例:

有効:

{
      "files": ["file1", "file2"],
      "filelocations": {
           "file1": "/etc/globalconfigs/file1.conf",
           "file2": "/usr/bin/file2.sh"
      }
}

無効 (otherkey が にありませんfiles):

{
      "files": ["file1", "file2"],
      "filelocations": {
           "file1": "/etc/globalconfigs/file1.conf",
           "otherkey": "/usr/bin/file2.sh"
      }
}

など。私が望むのは、のキーがfilelocations配列内filesにあることを確認することです。この例では、キーと値を組み合わせて JSON の構造を変更できるので、このような制約は必要ありませんが、私の場合、このように JSON を変更することはできないため、検証があると便利です。このためのメカニズム。

どうすればこれを達成できますか?

4

1 に答える 1

1

JSONスキーマではこれを実現できません。これを保証できるキーワードの組み合わせはありません。

あなたが冒険好きなら(そして私はあなたのためにそれをコーディングすることさえできます)、あなたは私のJSON Schema APIを使用して、あなたのニーズに合うようにカスタムキーワードをコーディングすることができます。実行可能です。

于 2013-01-02T22:07:10.763 に答える