
# 比较M-V模型的版本对象
#### 操作场景
在应用设计态完成模型的构建、发布（模型发布和应用发布），以及控制台部署应用后，会在应用运行态自动生成相应的接口。本文介绍如何通过版本对象比较接口（compareBusinessVersion）实现比较不同版本对象间的基本属性、扩展属性和关联关系。
#### URI
- URL格式： POST http://**{Endpoint}** /rdm_**{appID}** _app/publicservices/api/**{entityName}**/compareBusinessVersion
  

- 参数说明：
  表1URI参数说明 
  | 参数         | 是否必填 | 参数类型   | 描述                     |
  |:---|:---|:---|:---|
  | Endpoint   | 是    | String | 承载REST服务端点的服务器域名或IP地址。 |
  | appID      | 是    | String | 应用ID。                  |
  | entityName | 是    | String | 实体的英文名称。               |
     
  
 
#### 请求参数
表2请求body参数 
| 参数                 | 是否必填 | 参数类型   | 描述              |
|:---|:---|:---|:---|
| id                 | 是    | String | 主对象ID，用于标识版本对象。 |
| basicVersion       | 是    | String | 基础版本对象的版本号。     |
| correlationVersion | 是    | String | 待比较的版本对象的版本号。   |
   
为篇幅起见，这里只展示部分内容。更多参数信息，您可以在[全量数据服务](https://support.huaweicloud.com/usermanual-idme/idme_clientog_0154.html)进行查看。
#### 响应参数
返回两个版本对象的对比结果。
#### 请求示例
**示例背景**
您已在cn-north-4区域的TestApp应用中，构建一个名称为"TestMV"的M-V模型数据实体，并完成了实体发布、应用发布和应用部署。希望对主对象ID为"492060584863342592"的A.1版本和A.2版本进行比较。
**示例代码**
```
{
"params":{
"id":"492060584863342592",
"basicVersion":"A.1",
"correlationVersion":"A.2"
}
}
```
#### 响应示例
为篇幅起见，这里只展示部分内容。
```
{
    "result": "SUCCESS",
    "data": [
        {
           ......    //返回基础版本对象版本号A.1的所有内容
        },
        {
            ......    //返回待比较版本对象版本号A.2的基本属性的区别
            "relations": [
......    //返回待比较版本对象版本号A.2的关联关系的区别（所有区别都是A.2与A.1对比后A.2的区别）。如需对比A.1的区别，传参时调换A.1和A.2的顺序，将A.2作为基础版本对象版本号，A.1作为待比较的版本对象的版本号即可。
            ],
            "extAttrs": {
                ......    //返回待比较版本对象版本号A.2的扩展属性的区别
            },
            "latest": true,
            "lastUpdateTime": "2023-04-27 14:35:56"
        }
    ],
    "errors": []
}
```
