既存の GATT ベースプロファイルとは違う用途でBLE通信を行いたい、つまり自分で GATT ベースの独自プロファイルを定義したい場合に、どんな感じでサービス(Service / CBService)とキャラクタリスティック(Characteristic / CBCharacteristic)を構成したらいいのかがよくわからなったので、既存プロファイルの構成例がまとまってるページがないかなーと探してみたところ、BLEのポータルにまとまってました。
たとえば Heart Rate のサービスを見てみると、
という3つのキャラクタリスティックを持っていることがわかり、それぞれのキャラクタリスティックのページからは、valueがどんなフォーマットで、最大値最小値はいくらか、というようなことが書いてあります。
というわけで独自のGATTベースプロファイルによる通信を行いたいときは、このポータルで似たようなコンセプトのサービスを探して参考にできそうです。