JEP 198: Light-Weight JSON API

#java #json #openjdk

2014年6月にMike Duigouが提案した、JDK標準の軽量JSON API。RFC7159準拠のJSONドキュメント・データストリームの解析・生成を目的としていたが、実装されないままClosed / Withdrawnとして終了した。2026年現在はJEP 540: Simple JSON APIに置き換えられている。

Goals(目標)

  • JSON(RFC7159)の解析・生成
  • パース方式として、トークンストリーム・イベントストリーム(ドキュメント階層情報を含む)・イミュータブルなツリー表現の3種を選択可能にする
  • compact profileやJava ME向けにも使える程度の小さいAPIサブセット
  • Builderスタイルによるイミュータブルな値ツリーの構築
  • JSONデータストリーム出力・JSON「リテラル」向けのGeneratorスタイルAPI
  • 既存の値ツリーを入力に新しい値ツリーを生成するTransformer API

Non-goals

  • JSR 353への準拠
  • JAXBスタイルの型安全なデータバインディング
  • イベントの変更・置換API
  • ドキュメントツリーの変更API

設計の想定

java.util階層のサブパッケージ群として、events・streams・trees・generatorsの最低4モジュール構成で提供される想定だった。ストリームイベントとドキュメントオブジェクトはイミュータブルとし、ツリー変換時に未変更部分をオリジナルツリーと共有できるようにする設計だった。パースはSAXに似たイベントストリームモードと、DOMに似た値ツリーモードの2方式を提供する計画だった。

その後

JDK 9をターゲットに議論されたが、Dropされた(コミュニティでは"Proposed to Drop"として告知された)。以降10年近くJDK標準のJSON APIは存在しない状態が続き、2025年頃から後継となるJEP 540の議論が再開した。

出典

作成日時: 2026-08-19 09:24 / 更新日時: 2026-08-19 09:24