7.3.2. 出力形式

7.3.2.1. 概要

コマンドは実行結果をJSONまたはMessagePack、XML、TSVのどれかで出力します。

JSONとMessagePackの出力は同じ構造になっています。XMLとTSVはそれぞれ独自の構造になっています。

JSONまたはMessagePackの利用を推奨します。XMLは目視で結果を確認する時に便利です。TSVは特殊な用途では有用です。通常はTSVを使う必要はありません。

7.3.2.2. JSONとMessagePack

このセクションではJSONとMessagePack形式を使った時のコマンド実行結果の構造を説明します。MessagePackはバイナリー形式なのでここでは構造を示すためにJSONを使います。バイナリー形式はドキュメントには向いていません。

JSON形式、MessagePack形式のときは以下のような構造になります:

[HEADER, BODY]

実行例:

[
  [
    0,
    1337566253.89858,
    0.000355720520019531
  ],
  [
    [
      [
        1
      ],
      [
        [
          "_id",
          "UInt32"
        ],
        [
          "_key",
          "ShortText"
        ],
        [
          "content",
          "Text"
        ],
        [
          "n_likes",
          "UInt32"
        ]
      ],
      [
        2,
        "Groonga",
        "I started to use groonga. It's very fast!",
        10
      ]
    ]
  ]
]

この例では、以下の部分が HEADER に相当します:

[
  0,
  1337566253.89858,
  0.000355720520019531
]

BODY に相当する部分は以下です:

[
  [
    [
      1
    ],
    [
      [
        "_id",
        "UInt32"
      ],
      [
        "_key",
        "ShortText"
      ],
      [
        "content",
        "Text"
      ],
      [
        "n_likes",
        "UInt32"
      ]
    ],
    [
      2,
      "Groonga",
      "I started to use groonga. It's very fast!",
      10
    ]
  ]
]

7.3.2.2.2. BODY

BODY の内容は実行したコマンドに依存します。 BODY がないこともあります。

エラーが発生した時に、 BODY にエラーメッセージが入っていることもあります。

7.3.2.3. XML

TODO

7.3.2.4. TSV

TODO

7.3.2.5. 参考