JSONからTOONコンバーターは、標準的なJSONデータを瞬時にTOON(トークン指向オブジェクト記法)に変換します。これは、可読性・コンパクト性・機械効率を高めるために設計されたモダンなトークン化フォーマットです。さらに、インデント、キー折りたたみ、区切り文字の設定を自由にカスタマイズできます。
このブラウザー型ツールはローカルで動作し、トークン数やサイズ削減率を含むJSONとTOONの詳細な比較を表示します。
TOON形式とは?
TOONはToken-Oriented Object Notationの略で、人間が読みやすくJSONに着想を得た構文です。構造化データをトークンの順序付きリストとして表し、冗長性を減らし、型付きデータやメタデータの拡張を柔軟にサポートします。
TOONはオープンソースであり、github.com/toon-format/toonで定義されています。
JSONからTOONへの変換方法
JSONを貼り付けると、このツールは抽象構文木(AST)に解析し、その構造をTOONトークンとしてシリアライズします。配列、オブジェクト、プリミティブ型は、@toon-format/toonライブラリを使って順序付きで自己記述的なトークンに変換されます。
処理はすべてローカルで行われ、データのアップロードは不要です。変換後のTOONコードをコピーしたり、サイズや効率を比較することもできます。
カスタマイズ可能な出力設定
このコンバーターでは、TOON出力の整形を細かく制御できます:
- インデント: ネストレベルごとのスペース数を設定できます(0=コンパクト、2または4スペース)。
- キー折りたたみ: 単一ネストのキーをドット表記(例:
data.metadata.items)に短縮します。「セーフ」モードでは複雑な構造の可読性を保ちます。 - 区切り文字: 配列やインライン値の区切り(カンマ・セミコロン・パイプ)を指定します。シリアライゼーション形式に合わせた調整が可能です。
- 重複キーを許可: 入力データに重複キーがある場合、それをTOON出力に保持します。
これらの設定により、開発者は目的に応じてコンパクトさ・互換性・可読性を最適化できます。
なぜJSONではなくTOONを使うのか?
- コンパクト性: 冗長な構文や引用符を削除し、サイズを最大70%削減。
- 拡張性: 注釈やメタデータをサポート。
- 速度: 人間にも機械にも解析しやすい。
- カスタマイズ性: インデント、キー折りたたみ、区切り文字を自由に設定可能。
- 相互運用性: 既存のJSONワークフローと共存できる設計。
例: JSONとTOONの比較
// JSON
{
"user": { "name": "Alice", "age": 25 }
}
// TOON(セーフ折りたたみ + カンマ区切り)
user{name,age}: Alice,25
よくある質問(FAQ)
このコンバーターは何をしますか?
有効なJSON入力をTOON(トークン指向オブジェクト記法)に変換し、構造化データがトークン形式でどのように表現されるかを示します。
インデント、キー折りたたみ、区切り文字設定は何をしますか?
インデントはネスト構造の見え方を変えます。キー折りたたみは長い階層構造をドット記法に短縮します。区切り文字は配列や値の区切り(カンマやパイプ)を制御します。構造自体には影響しませんが、可読性に影響します。
TOONはJSONの代替ですか?
いいえ。TOONはJSONを補完する実験的な軽量表現であり、視覚化・圧縮・新しいシリアライゼーション技術の研究に役立ちます。
変換はローカルで行われますか?
はい。すべての処理はブラウザー内で実行され、データが外部に送信されることはありません。
サイズやトークン数の比較はできますか?
はい。変換後、JSONとTOONの比較テーブルにトークン数・バイトサイズ・節約率が表示されます。
TOONからJSONに戻せますか?
はい。TOONライブラリは逆変換をサポートしており、TOONテキストから有効なJSON構造を再構築できます。
なぜTOONを使うべきですか?
TOONは構造化データを視覚化・最適化する新しい方法を提供します。開発者、教育者、データエンジニアにとって有用です。
参考文献
- TOONプロジェクト : : TOON仕様とドキュメント (2025) )2025( 経由 GitHubリポジトリhttps://github.com/toon-format/toon