

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# データモデルスキーマ
<a name="data-model-schemas"></a>

マネージド統合は、*機能*定義とタイプ*定義*の 2 つのスキーマタイプをサポートしています。カスタムデータモデルを作成する場合は、JSON スキーマドキュメントを使用していずれかのタイプのスキーマを定義します。各スキーマドキュメントには 50,000 文字の制限があります。

## 機能スキーマ
<a name="data-model-schemas-capability"></a>

*機能は*、エンドポイント内の特定の機能を表す基本的な構成要素です。機能を使用すると、プロパティ、アクション、イベントを使用してデバイスの状態と動作をモデル化できます。*プロパティ*を使用すると、任意の宣言データ型でデバイスの状態属性を柔軟にモデル化できます。*アクション*と*イベント*は、実行できるコマンドやレポートできるシグナルなど、デバイスの動作をモデル化します。

以下は、機能スキーマの高レベルの構造を示しています。

```
Capability
  |
  |-- Action
  |-- Event      
  |-- Property
```

アクション  
デバイスの機能とのやり取りを表すエンティティ。たとえば、ベルを鳴らしたり、ドアにいる人を見たりします。

イベント  
デバイスの機能からのイベントを表すエンティティ。デバイスは、ドアのノックなどのセンサーからのインシデント、アラーム、またはアクティビティを報告するイベントを送信できます。

プロパティ  
デバイスの状態の特定の属性を表すエンティティ。例えば、ベルが鳴っている、またはポークライトがオンになっているなどです。

各機能には、一意の名前空間識別子、バージョン情報、およびその目的の説明が含まれます。スキーマドキュメントでは、セマンティックバージョニングを使用して下位互換性を維持し、新機能を有効にします。

詳細については、「[機能定義のスキーマ](schema-for-capability-definitions.md)」を参照してください。

## 型定義スキーマ
<a name="data-model-schemas-type-definition"></a>

型定義は、再利用性と合成性を可能にする宣言型の構造化データ型です。情報のフォーマット方法と制約方法を定義します。タイプ定義を使用して、IoT ソリューション全体で標準化されたデータ形式を作成します。

各タイプ定義には以下が含まれます。
+ 一意の名前空間識別子
+ タイトル
+ 説明
+ データ形式と制約を定義するプロパティ

型は、整数や制限が定義された文字列などの単純なプリミティブでも、列挙や複数のフィールドを持つカスタムオブジェクトなどの複雑な構造でもかまいません。タイプ定義では、JSON スキーマ構文を使用して、最小値と最大値、文字列の長さ、許容パターンなどの制約を指定します。

詳細については、「[タイプ定義のスキーマ](schema-for-type-definitions.md)」を参照してください。