

サポート終了通知: 2026 年 5 月 20 日、 AWS は のサポートを終了します AWS IoT Events。2026 年 5 月 20 日以降、 AWS IoT Events コンソールまたは AWS IoT Events リソースにアクセスできなくなります。詳細については、[AWS IoT Events 「サポート終了](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-end-of-support.html)」を参照してください。

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

# のディテクターモデル分析と診断情報 AWS IoT Events
<a name="analyze-diagnostic-information"></a>

ディテクターモデル分析は、次の診断情報を収集します。
+ **レベル** - 分析結果の重要度レベル。重要度レベルに基づいて、分析結果は次の 3 つの一般的なカテゴリに分類されます。
  + **情報** (`INFO`) - 情報結果は、ディテクターモデルの重要なフィールドについての情報を提供します。このタイプの結果は通常、即時のアクションを必要としません。
  + **警告** (`WARNING`) - 警告結果は、ディテクターモデルに問題を引き起こす可能性のあるフィールドに注意を喚起します。本番環境でディテクターモデルを使用する前に、警告を再調査し、必要な行動をとることをお勧めします。そうしないと、ディテクターモデルが期待どおりに動作しない可能性があります。
  + **エラー** (`ERROR`) - エラー結果は、ディテクターモデルで見つかった問題について通知します。ディテクターモデルを発行しようとする時、 AWS IoT Events はこの一連の分析を自動的に実行します。ディテクターモデルを発行する前に、すべてのエラーを修正する必要があります。
+ **場所** - ディテクターモデル内の、分析結果が参照するフィールドを特定するための情報です。場所には、通常、状態名、移行イベント名、イベント名、そして表現 (例: `in state TemperatureCheck in onEnter in event Init in action setVariable`) が含まれます。
+ **タイプ**- 分析結果のタイプ。分析タイプは、以下のように分類されます。
  + `supported-actions` – 指定されたイベントまたは移行イベントが検出されたときにアクションを呼び出す AWS IoT Events ことができます。組み込みアクションを定義して、タイマーを使用したり、可変を設定したり、他の AWS サービスにデータを送信したりできます。 AWS サービスが利用可能な AWS リージョンで、他の AWS サービスと連携するアクションを指定する必要があります。
  + `service-limits` – 制限とも呼ばれるサービスクォータは、 AWS アカウントのサービスリソースまたはオペレーションの最大数または最小数です。特に明記されていない限り、クォータはリージョンごとに決まっています。ビジネスニーズに応じて、ディテクターモデルを更新して、制限に遭遇しないようにするか、クォータの増加を要求できます。一部のクォータの増加を要求できますが、他のクォータは増加できません。詳細については、「[クォータ](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-quotas.html)」を参照してください。
+ **`structure`** - ディテクターモデルは、状態などの必須な要素をすべて備え、 AWS IoT Events のサポートする構造に従わなければなりません。ディテクターモデルには、少なくとも 1 つの状態と 1 つの条件が必要です。条件は、重要なイベントを検出するために入力データを評価します。イベントが検出されると、ディテクターモデルは次の状態に移行し、アクションを呼び出すことができます。これらのイベントは、移行イベントと呼ばれます。移行イベントは、次の状態に入るように指示する必要があります。
+ **`expression-syntax`** - AWS IoT Events では、ディテクターモデルの作成および更新時に値を指定する方法がいくつか用意されています。表現では、リテラル、演算子、関数、リファレンス、および置換テンプレートを使用できます。式を使用してリテラル値を指定するか、特定の値を指定する前に式を評価 AWS IoT Events できます。表現は、必要な構文に従う必要があります。詳細については、「[イベントデータをフィルタリング、変換、処理する式](iotevents-expressions.md)」を参照してください。

  のディテクターモデル式は、特定のデータまたはリソースを参照 AWS IoT Events できます。
  + **`data-type`** - AWS IoT Events は、整数、10 進数、文字列、およびブールデータ型をサポートします。式の評価中に が 1 つのデータ型のデータを別のデータ型に自動的に変換 AWS IoT Events できる場合、これらのデータ型には互換性があります。
**注記**  
整数と 10 進数は、 AWS IoT Eventsでサポートされている唯一の互換性のあるデータ型です。
AWS IoT Events は整数を文字列に変換できないため AWS IoT Events 、 は算術式を評価できません。
  + **`referenced-data`** - データを使用する前に、ディテクターモデルで参照されるデータを定義しておく必要があります。例えば、DynamoDB テーブルにデータを送信する場合は、表現 (`$variable.TableName`) で可変を使用する前に、テーブル名を参照する可変を定義する必要があります。
  + **`referenced-resource`** - ディテクターモデルが使用するリソースが使用可能である必要があります。リソースを使用する前に、リソースを定義する必要があります。例えば、温室の温度をモニタリングするためのディテクターモデルを作成するとします。`$input.TemperatureInput.sensorData.temperature` を使用して温度をリファレンスする前に、入力 (`$input.TemperatureInput`) を定義して、入力温度データをディテクターモデルに送信する必要があります。

次のセクションを参照して、エラーのトラブルシューティングを行い、ディテクターモデルの分析から考えられる解決策を見つけてください。

## でのディテクターモデルエラーのトラブルシューティング AWS IoT Events
<a name="troubleshoot-error-messages"></a>

上記のタイプのエラーは、ディテクターモデルに関する診断情報を提供し、取得する可能性のあるメッセージに対応します。これらのメッセージと推奨される解決策を使用して、ディテクターモデルのエラーをトラブルシューティングします。

**Topics**
+ [`Location`](#analyze-location)
+ [`supported-actions`](#analyze-supported-actions)
+ [`service-limits`](#analyze-service-limits)
+ [`structure`](#analyze-structure)
+ [`expression-syntax`](#analyze-expression-syntax)
+ [`data-type`](#analyze-data-type)
+ [`referenced-data`](#analyze-referenced-data)
+ [`referenced-resource`](#analyze-referenced-resource)

### `Location`
<a name="analyze-location"></a>

`Location` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ** - 分析結果に関する追加情報が含まれています。これは、情報、警告、またはエラーメッセージである可能性があります。

#### ソリューション
<a name="w2aac42c13c13b9b7b5b1b3b1b1"></a>

   AWS IoT Events が現在サポートしていないアクションを指定した場合、このエラーメッセージが表示されることがあります。サポートされているアクションのリストについては、[でデータを受信してアクションをトリガーするためにサポートされているアクション AWS IoT Events](iotevents-supported-actions.md) を参照してください。

### `supported-actions`
<a name="analyze-supported-actions"></a>

`supported‐actions` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** アクション定義*アクション定義*に無効なアクションタイプが存在します。

#### ソリューション
<a name="w2aac42c13c13b9b9b5b1b3b1b1"></a>

   AWS IoT Events が現在サポートしていないアクションを指定した場合、このエラーメッセージが表示されることがあります。サポートされているアクションのリストについては、[でデータを受信してアクションをトリガーするためにサポートされているアクション AWS IoT Events](iotevents-supported-actions.md) を参照してください。
+ **メッセージ:** ディテクターモデル定義に *aws-service* アクションがありますが、リージョン*リージョン名*で *aws-service* サービスがサポートされていません。

#### ソリューション
<a name="w2aac42c13c13b9b9b5b3b3b1b1"></a>

   指定したアクションが でサポートされているが、現在のリージョンでそのアクションを使用できないと AWS IoT Events、このエラーメッセージが表示されることがあります。これは、 リージョンで利用できない AWS サービスにデータを送信しようとしたときに発生する可能性があります。また、 AWS IoT Events と AWS 使用しているサービスの両方で同じリージョンを選択する必要があります。

### `service-limits`
<a name="analyze-service-limits"></a>

`service‐limits` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** ペイロードで許可されているコンテンツ表現が、状態*状態名*のイベント*イベント名*の制限*コンテンツ表現サイズ*バイトを超えました。

#### ソリューション
<a name="w2aac42c13c13b9c11b5b1b3b1b1"></a>

   アクションペイロードのコンテンツ表現が 1,024 バイトを超える場合、このエラーメッセージが表示されることがあります。ペイロードのコンテンツ表現のサイズは、最大 1024 バイトです。
+ **メッセージ:** ディテクターモデル定義で許可されている状態の数が、*ディテクターモデルごとの状態*の制限を超えました。

#### ソリューション
<a name="w2aac42c13c13b9c11b5b3b3b1b1"></a>

   ディテクターモデルに 20 を超える状態がある場合、このエラーメッセージが表示されることがあります。ディテクターモデルには、最大 20 の状態を含めることができます。
+ **メッセージ:** タイマー*タイマー名*持続時間は、少なくとも*最小タイマー持続時間* 秒の長さである必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c11b5b5b3b1b1"></a>

   タイマー持続時間が 60 秒未満の場合、このエラーメッセージが表示されることがあります。タイマー持続時間は 60〜31,622,400 秒にすることをお勧めします。タイマー持続時間の表現を指定すると、持続時間の表現の評価結果は最も近い整数に切り捨てられます。
+ **メッセージ:** イベントごとに許可されるアクションの数が、ディテクターモデル定義の*イベントごとのアクション*の制限を超えました

#### ソリューション
<a name="w2aac42c13c13b9c11b5b7b3b1b1"></a>

   イベントに 10 を超えるアクションがある場合、このエラーメッセージが表示されることがあります。ディテクターモデルでは、イベントごとに最大 10 のアクションを実行できます。
+ **メッセージ:** 状態ごとに許可される移行イベントの数が、ディテクターモデル定義の*状態ごとの移行イベント*の制限を超えました。

#### ソリューション
<a name="w2aac42c13c13b9c11b5b9b3b1b1"></a>

   状態に 20 を超える移行イベントがある場合、このエラーメッセージが表示されることがあります。ディテクターモデルの状態ごとに最大 20 の移行イベントを持つことができます。
+ **メッセージ:** 状態ごとに許可されるイベントの数が、ディテクターモデル定義の*状態ごとのイベント*の制限を超えました。

#### ソリューション
<a name="w2aac42c13c13b9c11b5c11b3b1b1"></a>

   状態に 20 を超えるイベントがある場合、このエラーメッセージが表示されることがあります。ディテクターモデルの状態ごとに最大 20 のイベントを持つことができます。
+ **メッセージ:** 単一の入力に関連付けることができるディテクターモデルの最大数が制限に達している可能性があります。入力*入力名*は、*入力ごとのディテクターモデル*ディテクターモデルルートで使用されます。

#### ソリューション
<a name="w2aac42c13c13b9c11b5c13b3b1b1"></a>

   入力を 10 を超えるディテクターモデルに送信しようとすると、この警告メッセージが表示される場合があります。1 つのディテクターモデルに最大 10 の異なるディテクターモデルを関連付けることができます。

### `structure`
<a name="analyze-structure"></a>

`structure` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** アクションには 1 つのタイプしか定義されていない可能性がありますが、*タイプ数*タイプのアクションが見つかりました。別のアクションに分割してください。

#### ソリューション
<a name="w2aac42c13c13b9c13b5b1b3b1b1"></a>

   APIオペレーションを使用してディテクターモデルを作成または更新することにより、1 つのフィールドに 2 つ以上のアクションを指定した場合、このエラーメッセージが表示されることがあります。`Action` オブジェクトの配列を定義できます。各アクションを個別のオブジェクトとして定義していることを確認してください。
+ **メッセージ:** TransitionEvent *移行イベント名*は存在しない状態*状態名*に移行します。

#### ソリューション
<a name="w2aac42c13c13b9c13b5b3b3b1b1"></a>

   移行イベントが参照した次の状態が AWS IoT Events で見つからない場合、このエラーメッセージが表示されることがあります。次の状態が定義されていること、および正しい状態名を入力したことを確認してください。
+ **メッセージ:** DetectorModelDefinition に共有状態名がありました。*状態の数*の繰り返しで、状態*状態名*が見つかりました。

#### ソリューション
<a name="w2aac42c13c13b9c13b5b5b3b1b1"></a>

   1 つ以上の状態に同じ名前を使用すると、このエラーメッセージが表示される場合があります。ディテクターモデルの各状態に一意の名前を付けるようにしてください。状態名は 1〜128 文字である必要があります。有効な文字: a-z、A-Z、0-9、\$1 (アンダースコア)、および - (ハイフン)。
+ **メッセージ:** 定義の initialStateName *初期状態名*が定義された状態に対応していませんでした。

#### ソリューション
<a name="w2aac42c13c13b9c13b5b7b3b1b1"></a>

   初期状態名が正しくない場合、このエラーメッセージが表示されることがあります。ディテクターモデルは、入力が到着するまで初期 (スタート) 状態のままです。入力が到着すると、ディテクターモデルはすぐに次の状態に移行します。初期状態名が定義された状態の名前であり、正しい名前を入力していることを確認してください。
+ **メッセージ:** ディテクターモデル定義は、条件で少なくとも 1 つの入力を使用する必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c13b5b9b3b1b1"></a>

   条件で入力を指定しなかった場合、このエラーが発生する可能性があります。少なくとも 1 つの条件で少なくとも 1 つの入力を使用する必要があります。それ以外の場合、 AWS IoT Events は受信データを評価しません。
+ **メッセージ:** SetTimer で設定できるのは秒と durationExpression のいずれか 1 つだけです。

#### ソリューション
<a name="w2aac42c13c13b9c13b5c11b3b1b1"></a>

   タイマーに `seconds` と `durationExpression` の両方を使用した場合、このエラーメッセージが表示されることがあります。`SetTimerAction` のパラメータとして `seconds` または `durationExpression` のいずれかを使用していることを確認してください。詳細については、「*AWS IoT Events API リファレンス*」の「[SetTimerAction](https://docs.aws.amazon.com/iotevents/latest/apireference/API_SetTimerAction.html)」を参照してください。
+  **メッセージ:** ディテクターモデルのアクションに接続できません。アクションを開始する条件を確認してください。

#### ソリューション
<a name="w2aac42c13c13b9c13b5c15b3b1b1"></a>

   ディテクターモデルのアクションに接続できない場合、イベントの条件は「false」と評価されます。アクションを含むイベントの条件をチェックして、その条件が「true」と評価されていることを確認します。イベントの条件が「true」に評価されていると、アクションは接続可能になります。
+ **メッセージ:** 入力属性が読み込まれていますが、タイマーが切れたことが原因と考えられます。

#### ソリューション
<a name="w2aac42c13c13b9c13b5c17b3b1b1"></a>

   入力属性の値は、次のいずれかが発生した場合に読み取ることができます。
  + 新しい入力値を受け取ったとき。
  + ディテクターのタイマーが切れたとき。

  

  入力属性が、その入力の新しい値を受け取ったときにのみ評価されるようにするには、次に示すように条件に `triggerType(“Message”)` 関数への呼び出しを含めてください。

  ディテクターモデルで評価中の元の条件: 

  ```
  if ($input.HeartBeat.status == “OFFLINE”)
  ```

  次に類似したものになります。

  ```
  if ( triggerType("MESSAGE") &&  $input.HeartBeat.status == “OFFLINE”)
  ```

  条件で提供された初期入力の前に `triggerType(“Message”)` 関数への呼び出しが来る場合。この手法を使用すると、`triggerType("Message")` 関数は「true」と評価され、新しい入力値を受け取る条件を満たします。`triggerType` 関数の使用方法の詳細については、「AWS IoT Events 開発者ガイド」の「[表現](https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html)」セクションの `triggerType` を検索してください。
+ **メッセージ:** ディテクターモデルの状態に到達できません。目的の状態への移行を引き起こす条件を確認してください。

#### ソリューション
<a name="w2aac42c13c13b9c13b5c19b3b1b1"></a>

   ディテクターモデル内の状態に到達できない場合、その状態への受信移行を引き起こす条件は「false」と評価されます。ディテクターモデル内のその到達できない状態への受信移行の条件が「true」と評価され、目的の状態に到達できることを確認してください。
+ **メッセージ:** タイマーが切れると、予期しない量のメッセージが送信される可能性があります。

#### ソリューション
<a name="w2aac42c13c13b9c13b5c21b3b1b1"></a>

   タイマーが切れたためにディテクターモデルが予期しない量のメッセージを送信する無限状態になるのを防ぐには、次のようなディテクターモデルの条件で `triggerType("Message")` 関数への呼び出しを使用することを検討してください。

  ディテクターモデルで評価中の元の条件: 

  ```
  if (timeout("awake"))
  ```

  次に類似したような条件に変換されます。

  ```
   if (triggerType("MESSAGE") && timeout("awake")) 
  ```

  条件で提供された初期入力の前に `triggerType(“Message”)` 関数への呼び出しが来る場合。

  この変更により、ディテクターでタイマーアクションが始まるのを防ぎ、メッセージが無限に送信されるのを防止できます。ディテクターでタイマーアクションを使用する方法の詳細については、｛AWS IoT Events 開発者ガイド」の「[ビルトインアクションの使用](https://docs.aws.amazon.com/iotevents/latest/developerguide/built-in-actions.html)」ページを参照してください。

### `expression-syntax`
<a name="analyze-expression-syntax"></a>

`expression‐syntax` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** ペイロード表現 \$1*表現*\$1 が無効です。定義されたペイロードタイプは JSON であるため、文字列に対して評価 AWS IoT Events される式を指定する必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c15b5b1b3b1b1"></a>

   指定されたペイロードタイプが JSON の場合、 AWS IoT Events は最初に、サービスが式を文字列に評価できるかどうかをチェックします。評価結果をブール値または数値にすることはできません。検証が成功しない場合、このエラーが発生する可能性があります。
+ **メッセージ:** `SetVariableAction.value` は表現である必要があります。値 「*可変値*」の分析に失敗しました

#### ソリューション
<a name="w2aac42c13c13b9c15b5b3b3b1b1"></a>

   `SetVariableAction` を使用して、`name` と `value` で可変を定義できます。`value` は、文字列、数値、またはブール値にすることができます。`value` の表現を指定することもできます。詳細については、*AWS IoT Events API リファレンス*の [SetVariableAction](https://docs.aws.amazon.com/iotevents/latest/apireference/API_SetVariableAction.html) を参照してください。
+ **メッセージ:** DynamoDB アクションの属性 (*属性名*) の表現を分析できませんでした。正しい構文で表現を入力してください。

#### ソリューション
<a name="w2aac42c13c13b9c15b5b5b3b1b1"></a>

   `DynamoDBAction` 置換テンプレートのすべてのパラメータに表現を使用する必要があります。詳細については、「*AWS IoT Events API リファレンス*」の「[DynamoDBAction](https://docs.aws.amazon.com/iotevents/latest/apireference/API_DynamoDBAction.html)」を参照してください。
+ **メッセージ:** DynamoDBv2 アクションの tableName の表現を分析できませんでした。正しい構文で表現を入力してください。

#### ソリューション
<a name="w2aac42c13c13b9c15b5b7b3b1b1"></a>

   `DynamoDBv2Action` の `tableName` は文字列である必要があります。`tableName` の表現を使用する必要があります。表現は、リテラル、演算子、関数、リファレンス、および置換テンプレートを受け入れます。詳細については、「*AWS IoT Events API リファレンス*」の「[DynamoDBv2Action](https://docs.aws.amazon.com/iotevents/latest/apireference/API_DynamoDBv2Action.html) 」を参照してください。
+ **メッセージ:** 表現を有効な JSON として評価できませんでした。DynamoDBv2 アクションは、JSON ペイロードタイプのみをサポートします。

#### ソリューション
<a name="w2aac42c13c13b9c15b5b9b3b1b1"></a>

   `DynamoDBv2` のペイロードタイプは JSON である必要があります。がペイロードのコンテンツ式を有効な JSON に評価 AWS IoT Events できることを確認します。詳細については、「*AWS IoT Events APIリファレンス*」の「[DynamoDBv2Action](https://docs.aws.amazon.com/iotevents/latest/apireference/API_DynamoDBv2Action.html)」を参照してください。
+ **メッセージ:** *アクションタイプ*のペイロードのコンテンツ表現を分析できませんでした。正しい構文でコンテンツ表現を入力してください。

#### ソリューション
<a name="w2aac42c13c13b9c15b5c11b3b1b1"></a>

   コンテンツ表現には、文字列 (「*ストリング*」)、可変 (\$1variable.*可変名*)、入力値 (\$1input.*入力名*.*データムへのパス*)、文字列の連結、および `${}` を含む文字列を含めることができます。
+ **メッセージ:** カスタマイズされたペイロードは空でない必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c15b5c13b3b1b1"></a>

   アクションに**カスタムペイロード**を選択し、 AWS IoT Events コンソールにコンテンツ式を入力しなかった場合、このエラーメッセージが表示されることがあります。**[Custom payload]** (カスタムペイロード) を選択した場合は、**[Custom payload]** (カスタムペイロード) の下にコンテンツ表現を入力する必要があります。詳細については、「*AWS IoT Events API リファレンス*」の「[ペイロード](https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html)」を参照してください。
+ **メッセージ:** タイマー「*タイマー名*」持続時間の表現「*持続時間の表現*」の分析に失敗しました。

#### ソリューション
<a name="w2aac42c13c13b9c15b5c15b3b1b1"></a>

   タイマー持続時間の表現の評価結果は、60〜31,622,400 の値である必要があります。期間の評価結果は、最も近い整数に切り捨てられます。
+ **メッセージ:** *アクション名*の表現「*表現*」の分析に失敗しました

#### ソリューション
<a name="w2aac42c13c13b9c15b5c17b3b1b1"></a>

   指定されたアクションの表現の構文が正しくない場合、このメッセージが表示されることがあります。正しい構文で表現を入力していることを確認してください。詳細については、「[デバイスデータをフィルタリングし、 でアクションを定義する構文 AWS IoT Events](iotevents-expressions.md#expression-syntax)」を参照してください。
+ **メッセージ:** `IotSitewiseAction` の *fieldName* を分析できませんでした。表現では正しい構文を使用する必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c15b5c19b3b1b1"></a>

   AWS IoT Events が の *fieldName* を解析できなかった場合、このエラーが表示されることがあります`IotSitewiseAction`。*fieldName* が AWS IoT Events が分析できる表現を使用していることを確認してください。詳細については、「*AWS IoT Events API リファレンス*」の「[IotSiteWiseAction](https://docs.aws.amazon.com/iotevents/latest/apireference/API_IotSiteWiseAction.html)」を参照してください。

### `data-type`
<a name="analyze-data-type"></a>

`data‐type` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** タイマー*タイマー名*持続時間の表現*持続時間の表現*が無効です。数値を返す必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c17b5b1b3b1b1"></a>

   AWS IoT Events がタイマーの期間式を数値に評価できなかった場合、このエラーメッセージが表示されることがあります。`durationExpression` を数値に変換できることを確認してください。ブール値などの他のデータ型はサポートされていません。
+ **メッセージ:** 表現 *condition-expression* は有効な条件表現ではありません。

#### ソリューション
<a name="w2aac42c13c13b9c17b5b3b3b1b1"></a>

   AWS IoT Events が をブール値`condition-expression`に評価できなかった場合、このエラーメッセージが表示されることがあります。ブール値は、`TRUE` か `FALSE` のいずれかである必要があります。条件表現ブール値に変換できることを確認してください。結果がブール値でない場合、`FALSE` と同等であり、アクションを呼び出したり、イベントで指定された `nextState` に移行したりしません。
+ **メッセージ:**互換性のないデータ型[*推定型*]が次の表現で*リファレンス*用に見つかりました。*表現*

#### ソリューション
<a name="w2aac42c13c13b9c17b5b5b3b1b1"></a>

   **解決策**: ディテクターモデルの同じ入力属性または可変のすべての表現は、同じデータ型をリファレンスする必要があります。

  次の情報を使用して、問題を解決してください。<a name="expression-reference-type-compatibility"></a>
  + 1 つ以上の演算子でオペランドとしてリファレンスを使用する場合は、リファレンスするすべてのデータ型に互換性があることを確認してください。

    例えば、次の表現では、整数 `2` は `==` 演算子と `&&` 演算子の両方のオペランドです。オペランドに互換性があることを確認するには、`$variable.testVariable + 1` と `$variable.testVariable` は整数または 10 進数をリファレンスする必要があります。

    また、整数 `1` は `+` 演算子のオペランドです。したがって、`$variable.testVariable` は整数または 10 進数をリファレンスする必要があります。

    ```
    ‘$variable.testVariable + 1 == 2 && $variable.testVariable’
    ```
  + 関数に渡される引数としてリファレンスを使用する場合は、関数が参照するデータ型をサポートしていることを確認してください。

    例えば、次の `timeout("time-name")` 関数では、引数として二重引用符を含む文字列が必要です。*timer-name* 値のリファレンスを使用する場合は、二重引用符で囲まれた文字列を参照する必要があります。

    ```
    timeout("timer-name")
    ```
**注記**  
`convert(type, expression)` 関数の場合、*タイプ*値にリファレンスを使用する場合、リファレンスの評価結果は `String`、`Decimal`、または `Boolean` である必要があります。

  詳細については、「[AWS IoT Events 式の入力と変数の リファレンス](iotevents-expressions.md#expression-reference)」を参照してください。
+ **メッセージ:** *リファレンス*で使用される互換性のないデータ型 [*推定型*]。これにより、ランタイムエラーが発生する可能性があります。

#### ソリューション
<a name="w2aac42c13c13b9c17b5b7b3b1b1"></a>

   同じ入力属性または可変の 2 つの表現が 2 つのデータ型をリファレンスしている場合、この警告メッセージが表示されることがあります。同じ入力属性または可変の表現が、ディテクターモデルの同じデータ型をリファレンスしていることを確認してください。
+ **メッセージ:** 演算子 [*operator*] に入力したデータ型 [*inferred-types*] は、次の表現と互換性がありません。「*表現*」

#### ソリューション
<a name="w2aac42c13c13b9c17b5b9b3b1b1"></a>

   表現が、指定された演算子と互換性のないデータ型を組み合わせている場合、このエラーメッセージが表示されることがあります。例えば、次の表現では、演算子 `+` は整数、10 進、および文字列のデータ型と互換性がありますが、ブールデータ型のオペランドとは互換性がありません。

  ```
  true + false
  ```

  演算子で使用するデータ型に互換性があることを確認する必要があります。
+ **メッセージ:** *入力属性* で見つかったデータ [*推定タイプ*] には互換性がなく、ランタイムエラーが発生する可能性があります。

#### ソリューション
<a name="w2aac42c13c13b9c17b5c11b3b1b1"></a>

   同じ入力属性の 2 つの表現が、状態の `OnEnterLifecycle`、または状態の `OnInputLifecycle` と `OnExitLifecycle` の両方の2つのデータ型をリファレンスしている場合に、このエラーメッセージが表示されることがあります。`OnEnterLifecycle` (または `OnInputLifecycle` と `OnExitLifecycle` の両方) の表現が、ディテクターモデルの各状態に対して同じデータ型をリファレンスしていることを確認してください。
+ **メッセージ:** ペイロード表現 [*表現*] が無効です。ペイロードタイプは JSON 形式であるため、ランタイムに文字列に評価される表現を指定します。

#### ソリューション
<a name="w2aac42c13c13b9c17b5c13b3b1b1"></a>

   指定したペイロードタイプが JSON であっても、その式を文字列に評価 AWS IoT Events できない場合、このエラーが表示されることがあります。評価結果がブール値や数値ではなく、文字列であることを確認してください。
+ **メッセージ:** 補間された表現 \$1*補間表現*\$1 は、ランタイムに整数またはブール値のいずれかに評価される必要があります。そうしないと、ペイロード表現 \$1*ペイロード表現*\$1 はランタイムに有効な JSON として分析できません。

#### 解決策
<a name="w2aac42c13c13b9c17b5c15b3b1b1"></a>

   が補間式を整数またはブール値に評価 AWS IoT Events できなかった場合、このエラーメッセージが表示されることがあります。tringなどの他のデータ型はサポートされていないため、補間された表現を整数またはブール値に変換できることを確認してください。
+ **メッセージ:** `IotSitewiseAction` フィールド*表現*の表現タイプは、*タイプ定義*タイプとして定義され、*タイプ推論*タイプとして推測されます。定義されたタイプと推測されたタイプは同じである必要があります。

#### ソリューション
<a name="w2aac42c13c13b9c17b5c17b3b1b1"></a>

   `IotSitewiseAction` の `propertyValue` の表現に、 AWS IoT Eventsによって推測されたデータ型とは異なる方法で定義されたデータ型がある場合、このエラーメッセージが表示されることがあります。ディテクターモデルのこの表現のすべてのインスタンスに同じデータ型を使用していることを確認してください。
+ **メッセージ:** `setTimer` アクションに使用されるデータ型 [*推定型*] は、次の表現の `Integer` に評価されません。*表現*

#### ソリューション
<a name="w2aac42c13c13b9c17b5c19b3b1b1"></a>

   期間表現の推定データ型が整数または小数でない場合、このエラーメッセージが表示されることがあります。`durationExpression` を数値に変換できることを確認してください。ブール値や文字列などの他のデータ型はサポートされていません。
+ **メッセージ:** 比較演算子 [*オペレーター*] のオペランドで使用されるデータ型 [*推定タイプ*] は、次の表現で互換性がありません: *表現*

#### ソリューション
<a name="w2aac42c13c13b9c17b5c21b3b1b1"></a>

   ディテクターモデルの条件表現 (*表現*) の演算子の*オペランド*の推定データ型が一致しません。オペランドは、ディテクターモデルのすべての 他の パートで一致するデータ型で使用する必要があります。

**ヒント**  
`convert` を使用して、ディテクターモデルの表現のデータ型を変更できます。詳細については、「[AWS IoT Events 式で使用する関数](iotevents-expressions.md#expression-function)」を参照してください。

### `referenced-data`
<a name="analyze-referenced-data"></a>

`referenced‐data` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** 壊れたタイマーが検出されました: タイマー*タイマー名*が表現で使用されていますが、設定されていません。

#### ソリューション
<a name="w2aac42c13c13b9c19b5b1b3b1b1"></a>

   設定されていないタイマーを使用すると、このエラーメッセージが表示される場合があります。表現で使用する前に、タイマーを設定する必要があります。また、正しいタイマー名を入力していることを確認してください。
+ **メッセージ:** 壊れた可変が検出されました: 可変*可変名*が表現で使用されていますが、設定されていません。

#### ソリューション
<a name="w2aac42c13c13b9c19b5b3b3b1b1"></a>

   設定されていない可変を使用すると、このエラーメッセージが表示される場合があります。表現で使用する前に、可変を設定する必要があります。また、正しい可変名を入力していることを確認してください。
+ **メッセージ:** 壊れた可変が検出されました: 可変に値を設定する前に、表現で使用されています。

#### ソリューション
<a name="w2aac42c13c13b9c19b5b5b3b1b1"></a>

   表現で評価できるには、各可変に値に割り当てられている必要があります。値を取得できるように、毎回使用する前に可変の値を設定してください。また、正しい可変名を入力していることを確認してください。

### `referenced-resource`
<a name="analyze-referenced-resource"></a>

`referenced‐resource` に関する情報を含む分析結果は、次のエラーメッセージに対応します。
+ **メッセージ:** ディテクターモデル定義に、存在しない入力へのリファレンスが含まれています。

#### ソリューション
<a name="w2aac42c13c13b9c21b5b1b3b1b1"></a>

  表現を使用して存在しない入力をリファレンスすると、このエラーメッセージが表示される場合があります。表現が既存の入力をリファレンスしていることを確認し、正しい入力名を入力してください。入力がない場合は、最初に入力を作成します。
+ **メッセージ:** ディテクターモデルの定義 に無効な InputName が含まれています: *入力名*

#### ソリューション
<a name="w2aac42c13c13b9c21b5b3b3b1b1"></a>

   ディテクターモデルに無効な入力名が含まれている場合、このエラーメッセージが表示されることがあります。正しい入力名を入力してください。入力名は 1〜128 文字である必要があります。有効な文字: a-z、A-Z、0-9、\$1 (アンダースコア)、および - (ハイフン)。