# DIDってなんだ！#4 - データモデル 

By [Kouki Minamoto](https://paragraph.com/@kouki-minamoto) · 2022-04-24

---

前回はこちら↓

[https://mirror.xyz/0xb69CB3EFbaDB1b30f6d88020e1FA1FC84B8804d4/nm9wfkVOhwaxVtOtZofvyX4Gmw5jfxWoErYu9DRA1eI](https://mirror.xyz/0xb69CB3EFbaDB1b30f6d88020e1FA1FC84B8804d4/nm9wfkVOhwaxVtOtZofvyX4Gmw5jfxWoErYu9DRA1eI)

こんにちは〜！C-Voxelという DID系のプロダクトを開発しております、みなもとと申します！！ C-Voxel はWeb上でおこなった仕事や個人の実績をDIDと紐付けて可視化・蓄積することができるプロトコルです！興味のある方はぜひ一度チェックして見てください！

[https://testnet.cvoxel.xyz/](https://testnet.cvoxel.xyz/)

* * *

今回はですね、とうとう実際に **DIDドキュメント** がどんな形になっているかを見ていくことにします！

**DIDドキュメント** がなんだったかというと、特定のDIDが持っているデータがまとまっているJSON形式のドキュメントでしたね！

DIDドキュメントは、`エントリー` のマップによって構成されています。「マップ」というのは辞書やキーバリューとも言われるような、ある特定の文字列に対して、何かしらのデータを持っているデータの形です。

そして DIDドキュメントには二種類の分類の `エントリー` が存在します。

一つ目が、`Properties` という分類です。二つ目が、`Representation-specific entries` という分類です。

![](https://storage.googleapis.com/papyrus_images/2e9c9fe7b6956463007ce6cae63777b69451d2f22ec55a533cc60fec2fd3b1ee.png)

とは言っても、なんのこっちゃわからないので、ざっくり説明します。

### Properties : プロパティ

これは、`id` や `controller` 、`authentication` など DIDドキュメントが必ず持っておかなければならない情報や任意で追加できる情報など、DIDに紐づけられる色々なデータに参照するための、「キー」のことです。

### Representation-specific Entries : 任意の表現でのエントリ

これも結局は、上記のプロパティと同じ形にデコードされます。しかし、「DIDドキュメントをXMLで書きたい！！！」とか「YAMLじゃないとやだ！！！」という **JSON以外のフォーマットでDIDドキュメントを書きたい人** に向けた仕組みです。

     “@context”: [
        "https://www.w3.org/ns/did/v1",
        "https://w3id.org/security/suites/jws-2020/v1",
        "https://w3id.org/security/suites/ed25519-2020/v1"
      ]
    

みたいな感じでDIDドキュメント内にURLを記述しておくことで、外部に置かれた任意のデータ表現でのDIDドキュメントにアクセスできるようになります。とは言っても、DIDドキュメントの大元はJSONなので、**JSON形式にデコードしてあげる仕組みを DIDメソッドを提供する側は用意しておく必要がある**ということです。

### まとめ

*   DIDドキュメントには二つのエントリーがある。
    
*   一つがプロパティでも一つが任意形式で表現されたデータへのエントリー
    
*   結局は全部 JSON にデコードされる
    

* * *

本日は短かったですが以上です！！！

Web3でのUIデザインやDIDに関する最新情報をお届けしておりますので、よかったらツイッターもフォローしてください〜！

[https://twitter.com/KoukiMinamoto](https://twitter.com/KoukiMinamoto)

---

*Originally published on [Kouki Minamoto](https://paragraph.com/@kouki-minamoto/did-4)*
