7
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ZSONは Zed というプロジェクトで使われているZed Data Modelをテキストで表現するためのフォーマットです。

ZSONはJSONの上位互換となるように設計されており、JSONに対していくつかの拡張がされています。
以下ではJSONと比較したZSONの仕様を紹介します。

コメント

ZSONではコメントがサポートされています。
// 形式の行コメントと /* */ 形式のブロックコメントが使えます。

型デコレーター

ZSONでは型デコレーターを使って型を明示することができます。以下にように値の後ろに型名を括弧で囲って指定します。

<value> ( <type> )

また、型に名前を付けておき、それを後から使うこともできます。
以下はunit16型にportという型名を付けて、それを後から再利用している例です。

{p1:80 (port=uint16), p2: 8080 (port)}

プリミティブ型

ZSONのプリミティブ型はZedデータモデルのプリミティブ型に準じます。

JSONと比較すると以下のような特徴があります。

  • 整数型が符号のありなし、ビット数などによって複数個用意されている
  • 浮動小数点数型がビット数に応じて複数個用意されている
  • 十進数型(decimal)が存在する
  • 時間と時刻を表す型が存在する
  • バイナリを表す型が存在する
  • IPアドレスやネットマスクを表す型が存在する
  • Zedの型を表す型が存在する

複合型

ZSONにはレコード型(JSONのオブジェクト型)や配列型のようなJSONに存在する型に加えて以下の方が存在します。

  • Set型
  • Map型
  • Union型
  • Enum型
  • Error型

出展:

7
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?