13

JSON をスキーマ言語として使用する初めての Avro スキーマを作成しています。プレーンな JSON にコメントを入れることができないことはわかっていますが、Avro ツールでコメントが許可されているかどうか疑問に思っています。たとえば、JSON を解析する前に (プリプロセッサのように) それらを削除する可能性があります。

編集: C++ Avro ツールチェーンを使用しています

4

4 に答える 4

14

はい、ただし制限があります。スキーマでは、Avro データ型「record」、「enum」、および「fixed」により、任意のドキュメント文字列を含む「doc」フィールドが許可されます。例えば:

{"type": "record", "name": "test.Weather",
 "doc": "A weather reading.",
 "fields": [
     {"name": "station", "type": "string", "order": "ignore"},
     {"name": "time", "type": "long"},
     {"name": "temp", "type": "int"}
 ]
}

公式の Avro 仕様から:

doc: このスキーマのユーザーにドキュメントを提供する JSON 文字列 (オプション)。

https://avro.apache.org/docs/current/spec.html#schema_record

例: https://github.com/apache/avro/blob/33d495840c896b693b7f37b5ec786ac1acacd3b4/share/test/schemas/weather.avsc#L2

于 2016-11-16T00:41:27.233 に答える
6

はい、Avro JSON スキーマで C コメントを使用できます/* something */ or // something
。Avro ツールは、解析中にこれらの式を無視します。
編集: Java API でのみ動作します。

于 2013-05-30T11:52:13.180 に答える