LoginSignup
8
7

More than 3 years have passed since last update.

NGSI v2 まとめ

Last updated at Posted at 2020-03-27

仕事でNGSIによるInformation modelを扱う機械になったのでまとめてみた。

NGSIとは

ネットワークAPIの共通規格のこと
国内では主にNECがメインとなって進めていた。
OMA(Open Mobile Alliance)という団体で、仕様策定などを行なっている。

image.png

各国、各社の取り組みについて

国内

官民データ活用共通プラットフォーム協議会(製造業やSIer、クラウドベンダーなどの集まり)がNGSIを用いたシステムの実証実験を2018年ごろから実施している。

 海外

欧州の官民プロジェクトにて
NGSIをベースとしたFIWAREというスマートシティプラットーフォームで活用できるOSS群の活用や、中のデータの持ち方などを定義している。

NGSI v2とは

改良され単純化された OMA-NGSIのバインディング

  • 単純なことが容易にできる
  • 複雑なことができる
  • アジャイル、実装主導型のアプローチ
  • デベロッパー・フレンドリー(RESTful, JSON)

リソースURLに/v2プレフィックスを使用する。

モデル(NGSI)

image.png

RESTful-ness

NGSI v1では

  • 厳密ではRESTfulではなかった。リソースを識別することはできず、単なる操作の種類を示していた。
  • POSTのみであった。
  • 実際、RESTfulというよりも、RPCに近い。

NGSI v1との違い

JSON

以下のようにリクエスト・レスポンスの一連の動きをみても
ペイロードの長さやURLの簡潔さにおいて、v2はv1よりも優れていることがわかる。
image.png

image.png

image.png

v1はXMLエンコーディングに合わせて文字列ベースで作られていたが、v2ではJSONベースで様々な型が利用できる。

以下の例がわかりやすい。
image.png

Datetimeについても、v1は文字列でしか扱うことはできないが、v2ではサポートされている。
これは、v2が優れているというより、v1がビミョーなきがする。
image.png

ページネーションだと露骨にv1はまずい。
上:v1、下:v2
errorCodeとして扱われている。(errorではないにも関わらず)
image.png

その他

RESTfulとは

REpresentational State Transferの略

特徴

アドレス可能性

URIをつうじ、リソースを端的にさし示すことができる性質を有している。APIのバージョン、データを取得するのか、それとも更新するのか、などが一目でわかるように全ての情報が一意なURIで表現されているようにすること。

ステートレス性

全てのHTTPリクエストが完全に分離している性質であること。セッション管理などの状態管理は行われない。

接続性

ある情報に「別の情報へのリンク」を含めることができること。また別の情報に接続できること。

統一インタフェース

CRUDは全てHTTPメソッドを使用すること

参考資料

https://businessnetwork.jp/Detail/tabid/65/artid/245/Default.aspx
https://www.slideshare.net/fisuda/ngsiv2-overview-for-developers-that-already-know-ngsiv1-ja

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7