2017-03-14 12 views
0

が、私はプロジェクトのコーディング標準を定義しようとしているとあなたが仕様のリンクをたどる場合、私は、the offical JSON Schema websiteから、4JSONスキーマのバージョンを指定/参照する方法は?

しかしJSONスキーマのバージョンの使用を指定したい、そして、the github pageが表示されますバージョン4ドラフト(the IETF)に追加してください。この文書は、明示的にそれがインターネットドラフト文書であると述べていると言う:

インターネットドラフトは6ヶ月 の最大の有効なドラフト文書であり、どの で、更新、置換、または他の文書によって廃止することができます時間。参考文献としてインターネットドラフトを使用したり、「進行中の作業」以外の資料を引用することは不適切です。

インターネットドラフトステータス以外のバージョンのJSONスキーマはないようですので、どのようにこれを参照すればよいですか?

編集:これはJSONファイル自体ではなく、書かれたプロジェクトドキュメントにあります。私は現在、このようなテキストがあります。

Pythonの標準とスタイルを
- すべてのPythonのソースファイルは、具体的には3のインストールでPythonの デフォルトとしてPython 3.5.1を対象に、 のPython 3.xので書かなければなりませんUbuntu 16.04 LTS。
- すべてのPythonソースファイルは、PEP 8標準[脚注: https://www.python.org/dev/peps/pep-0008/]に準拠している必要があります。
- すべてのPythonソースファイル は、各配送の前にflake8 [脚注: https://pypi.python.org/pypi/flake8/3.2.1]を渡さなければなりません。 チェッカーがチェックインされたソースファイルで を変更する必要がある場合、チェッカーは極度にペダンティックでなければなりません。 はユニットテストの失敗とみなされなければなりません。
- すべてのPythonソースファイルは、 PEP 257標準[脚注: https://www.python.org/dev/peps/pep-0257/]に準拠するドキュメントストリングを使用するべきです(SHOULD)。
JSON標準とスタイル
- すべてのJSONソースファイルはJSON Schemaのバージョン4 [:https://tools.ietf.org/html/draft-zyp-json-schema-04脚注]で記述する必要があります。各 出荷前にチェック:すべてのJSONソースファイルがjsonschema [ https://python-jsonschema.readthedocs.io/en脚注]に合格しなければならない -
: -
すべて JSONソースファイルは、GoogleのJSONスタイルガイド0.9 [https://google.github.io/styleguide/jsoncstyleguide.xml脚注]に従わなければなりません。チェッカーは、チェッカーが ソースファイルをチェックインして何かを変更する必要がある場合、ユニットテストの失敗とみなされなければなりません( )。
TOML標準とスタイル
- すべてのTOMLソースファイルはTOML標準のv0.4.0に準拠する必要があります[脚注: https://github.com/toml-lang/toml]。
- すべてのTOMLソースファイルは、エラーなしで のpytomlパーサーv0.1.11 [脚注: https://github.com/bryant/pytoml]で読み込み可能でなければなりません。
- すべてのTOMLソースファイルは、 が左マージンで整列されるべきです(SHOULD)。つまり、サブセクションを字下げしないでください。

私にとって、JSONスキーマのリファレンスへのイタリック体の脚注は、上で示した抜粋では適切ではないと明言されているインターネットドラフト文書を引用しています。インターネットドラフトの状態以外の するものですJSONスキーマのいずれかのバージョンがあるように思えませんので

答えて

1

は、どのように私は これを参照する必要がありますか?

あなたがこれを行う:

{ 
    "$schema":"http://json-schema.org/draft-04/schema#", 
    ... // the rest of your schema 
} 

を標準のドラフト形式であるからといって、それ任意の少ない標準がありません。

今や、$スキーマ宣言なしでスキーマをオーサリングするオプションもありますが、それでも完全に有効です。これを行い、適切なJSONスキーマドラフトv4定義を使用すると、これは、ドラフトv4をサポートするすべてのパーサーが使用できるようになります。ただし、$スキーマ宣言を使用するのがコンベンションです。すべてのJSONソースファイルはJSON Schemaのバージョン4

で書かなければならない

  • あなたはすべてのJSONファイルは、スキーマベースにしたくない - それはばかげています。ただし、標準のバージョンのを参照する以外に、ドキュメントの観点から選択する必要がないスキーマファイルが必要です。そのドラフトでも、そのドラフトはドラフト4になるはずです。

    代わりに、JSONスキーマへの参照を完全に削除することができます。これはおそらく私が取るルートです。

+0

私は、使用されているすべての言語のコーディングスタイルと標準について説明しているプロジェクトドキュメントでスキーマバージョンを参照したいと考えています。たとえば、Pythonの場合、私はPython 3.5.1とPEP-8を参照しています。私はこのことをより明確にするために質問を編集します。 – Vicky

+0

@Vickyあなたのコメントを反映するために私の答えを更新しました。 –

+1

ありがとうございました。これは、JSONドキュメントとJSONスキーマの違いを見て、私の頭の中で基本的な誤解を明確にするのに役立っています。私が本当に欲しいのは、ECMA-404規格だけです。ありがとう! – Vicky

関連する問題