/note/tech

CDDLの紹介

まずCDDLとは何かというと、CBORのデータ構造を記述するためのスキーマ記述言語です。 CDDLを使うことで、プロトコルで使われるCBORデータのフォーマットを曖昧さなく記述でき、あるCBORデータが記述されたフォーマットに従っているかどうかを検証できるようになります。

また、CBORで利用できるデータ型はJSONで使えるデータ型のスーパーセットになっているため、CDDLはJSONのスキーマ記述にも利用できるとされています。 以降、CDDLの使い方や記述の仕方について簡単な例を元に説明したいと思います。

CDDLの文法としてはBNFに似ているところがあり、ルールの宣言を並べることによってスキーマ全体が表現されます。 BNFを知っている方は特に違和感なく読めるのではないかと思います。

CDDL、Pythonのライブラリなさそうだな