

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 资产模型版本
<a name="model-active-version"></a>

 AWS IoT SiteWise 支持对资产模型和组件模型的创建和更新操作进行异步处理。它还会更新模型的状态。

 AWS IoT SiteWise 将有效模型在创建和更新请求中的更改传播到其依赖资源（从资产模型传播到资产，或者从组件模型传播到资产模型）。然后，它会将该模型置于 `ACTIVE` 状态。

 如果提供的模型定义无效，则将模型 AWS IoT SiteWise 置于`FAILED`状态。更改不会传播到依赖资源。依赖资源是指模型处于 `ACTIVE` 状态时传播的最后一个模型定义。

 根据以上信息，模型定义有两种类型的模型版本：

1. **最新版本 -** 作为创建或更新请求的一部分接受的最新定义。

1. **活动版本 -** 已成功处理最新定义，模型状态为 `ACTIVE`。

 默认情况下，在资产模型或组件模型上调用 descri APIs be 时，会返回模型最新版本的详细信息。在某些情况下，需要资产模型或组件模型的活动版本。参见下面的示例场景：
+  一个定义无效的更新操作使您的资产模型处于 `FAILED` 状态。您必须通过检索资产模型的活动版本并创建另一个引用此有效定义的更新请求来恢复更改。
+  上 AWS IoT SiteWise 有一个应用程序，客户可以在其中查看资产及其相应的资产模型。当用户引用与特定资产相对应的资产模型定义，并且该资产模型暂时处于 `UPDATING`、`PROPAGATING` 或 `FAILED` 状态时，最新版本返回尚未传播到其资产的资产模型定义。在这种情况下，您必须为客户检索资产模型的活动版本。

**Topics**
+ [检索资产模型或组件模型的活动版本（控制台）](#active-console)
+ [检索资产模型或组件模型的活动版本（AWS CLI）](#active-cli)

## 检索资产模型或组件模型的活动版本（控制台）
<a name="active-console"></a>

按照以下步骤在 AWS IoT SiteWise 控制台中检索资产模型或组件模型的活动版本。

**提示**  
资产模型和组件模型均列在导航窗格的**模型**下。所选资源模型或组件模型的**详细信息**面板会显示其类型。

**要检索资产模型或组件模型的活动版本（控制台），请执行以下步骤：**

1. <a name="sitewise-open-console"></a>导航至 [AWS IoT SiteWise 控制台](https://console.aws.amazon.com/iotsitewise/)。

1. <a name="sitewise-choose-models"></a>在导航窗格中，选择**模型**。

1. 选择要检索其活动版本的模型。

   1.  如果模型处于 `ACTIVE` 状态，则表示您正在查看其活动版本。

   1.  如果模型暂时处于 `UPDATING`、`PROPAGATING` 或 `FAILED` 状态，请在**详细信息**面板的**状态**下查找**查看活动版本**。

## 检索资产模型或组件模型的活动版本（AWS CLI）
<a name="active-cli"></a>

 AWS CLI 使用检索资产模型或组件模型的活动版本。

要检索资产模型或组件模型的活动版本，请使用带`assetModelVersion`参数的[DescribeAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html)操作。

**提示**  
 AWS CLI 将组件模型定义为一种资产模型。因此，您可以对两种类型的模型使用相同的[DescribeAssetModel](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html)操作。响应中的 `assetModelType` 字段表示它是 `ASSET_MODEL` 还是 `COMPONENT_MODEL`。

**要检索资产模型或组件模型的活动版本（AWS CLI），请执行以下步骤：**
+ 运行以下命令以描述该模型。*asset-model-id*替换为资产模型或组件模型的 ID 或外部 ID。外部 ID 是用户定义的 ID。有关更多信息，请参阅《AWS IoT SiteWise 用户指南》**中的 [使用外部引用对象 IDs](object-ids.md#external-id-references)。

  ```
  aws iotsitewise describe-asset-model --asset-model-id asset-model-id --asset-model-version ACTIVE
  ```

  此操作将返回包含模型详细信息的响应。响应中包含具有以下结构的 `assetModelStatus` 对象。

  ```
  {
      ...
      "assetModelName": "string",
      "assetModelProperties": [ ... ],
      ...,
      "assetModelVersion": "string"
  }
  ```