文档首页/ 工业数字模型驱动引擎/ API参考/ API/ 数据建模引擎/ 版本服务/ 修订M-V模型数据实例 - ExecuteRevise
更新时间:2026-07-28 GMT+08:00
分享

修订M-V模型数据实例 - ExecuteRevise

功能介绍

本接口用于对指定的Master-Branch-Version(M-V)模型实例执行修订(Revise)操作。

调用本接口后,系统会基于指定的主对象(Master)及其当前最新修订版本,复制并生成一个新的修订版本实例。

在调用本接口前,请确保目标数据模型满足以下条件:

  1. 已在应用设计态完成M-V模型实体(即“父模型”为“VersionObject”的数据实体)的创建与发布。具体操作请参见创建数据实体创建关系实体应用发布

  2. 已将对应应用成功部署至运行态。具体操作请参见部署应用

接口约束

本接口仅支持M-V模型数据实例,不支持普通单实体或关系实体。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项

URI

POST /rdm_{identifier}_app/publicservices/api/{modelName}/revise

表1 路径参数

参数

是否必选

参数类型

描述

identifier

String

参数解释:

应用的唯一标识。

  • 于2023年06月01日之前创建的应用,其唯一标识为该应用的名称。

  • 于2023年06月01日之后创建的应用,其唯一标识为该应用的ID。

获取方法请参见获取运行服务清单 - ListEnvs

约束限制:

不涉及。

取值范围:

  • 于2023年06月01日之前创建的应用:由英文字母和数字组成,长度为1-36个字符。

  • 于2023年06月01日之后创建的应用:由英文字母和数字组成,且长度为32个字符。

默认取值:

不涉及。

modelName

String

参数解释:

M-V模型的英文名称。

约束限制:

必须为已发布的M-V模型,单实体、关系实体不支持。

取值范围:

以大写字母开头,只能包含字母、数字、“_”,且长度为1-60个字符。

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

IAM用户的token。

获取方法请参见获取IAM用户Token

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

applicationId

String

参数解释:

应用ID,用于指定实例所属的应用。

当URL路径中已能明确应用上下文时,此参数可不传。

获取方法请参见获取租户下的应用清单 - ListApps

约束限制:

不涉及。

取值范围:

由英文字母和数字组成,且长度固定为32个字符。

默认取值:

不涉及。

params

VersionModelVersionReviseDTO object

参数解释:

请求参数对象,包含修订配置信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表4 VersionModelVersionReviseDTO

参数

是否必选

参数类型

描述

masterId

String

参数解释:

主对象ID,用于定位需要修订的M-V模型实例所属的主对象。

约束限制:

不涉及。

取值范围:

-9223372036854775808到9223372036854775807的整数。

默认取值:

不涉及。

workCopyType

String

参数解释:

关系的复制类型,控制修订后的新版本是否继承原实例的关系实例。不同取值对应不同的关系继承策略,适用于不同的业务场景。

约束限制:

不涉及。

取值范围:

  • BOTH:若存在关系实例引用此数据实例作为源端实例或目标端实例,修订后的数据实例将继承这些关系实例。

  • SOURCE:若存在关系实例引用此数据实例作为源端实例,修订后的数据实例将继承这些关系实例。

  • TARGET:若存在关系实例引用此数据实例作为目标端实例,修订后的数据实例将继承这些关系实例。

  • NONE:修订后的数据实例将不继承任何关系实例。

  • CUSTOM:若指定的关系实体集合对应的关系实例引用此数据实例作为源端实例或目标端实例,修订后的数据实例将继承这些关系实例。

默认取值:

不涉及。

customLinkSet

Array of strings

参数解释:

关系实体名称集合,与workCopyType的值CUSTOM配合使用。

指定需要继承的关系实体名称列表,仅继承这些关系实体对应的关系实例。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

workingCopy

Boolean

参数解释:

修订后是否自动检出。若设置为true,修订后的新版本将自动处于已检出状态(生成工作副本),可直接进行编辑;若设置为false(默认),修订后的新版本处于已检入状态。

约束限制:

不涉及。

取值范围:

  • true:修订后自动检出。

  • false:修订后不自动检出。

默认取值:

false。

creator

String

参数解释:

创建者账号,记录本次生成的新版本的创建者信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

modifier

String

参数解释:

更新者账号,记录本次修订操作的操作人信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

result

String

参数解释:

M-V模型数据更新请求结果状态。

取值范围:

  • SUCCESS:请求成功。

  • FAIL:请求失败。

data

Array of VersionModelViewDTO objects

参数解释:

更新后的M-V模型版本实例详情数组。若指定的实例id不存在,返回空数组。

取值范围:

不涉及。

errors

Array of strings

参数解释:

更新异常信息数组,当result为FAIL时返回具体的错误描述。常见错误包括:实例不存在、实例处于检出状态、权限不足、密级校验失败等。

取值范围:

不涉及。

表6 VersionModelViewDTO

参数

参数类型

描述

branch

VersionModelBranchViewDTO object

参数解释:

更新后的分支对象详情,包含分支的创建时间、版本号、系统版本等属性。

取值范围:

不涉及。

checkOutTime

String

参数解释:

检出时间,使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。若实例未检出,返回null。

取值范围:

不涉及。

checkOutUserName

String

参数解释:

检出人名称。若实例未检出,返回null。

取值范围:

不涉及。

className

String

参数解释:

版本实例的类名。

取值范围:

不涉及。

createTime

String

参数解释:

版本实例的创建时间,使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

creator

String

参数解释:

版本实例的创建者账号。

取值范围:

不涉及。

description

String

参数解释:

版本实例的描述信息,如工艺变更说明、设备规格备注等。

取值范围:

不涉及。

id

String

参数解释:

版本实例的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

iteration

Integer

参数解释:

版本实例的迭代版本号,用于标识同一版本下的迭代次数。

取值范围:

不涉及。

kiaguid

String

参数解释:

KIA密级,用于数据资产的安全标识。

取值范围:

不涉及。

lastUpdateTime

String

参数解释:

版本实例的最后更新时间,使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

latest

Boolean

参数解释:

是否为最新版本。

取值范围:

  • true:是最新版本。

  • false:不是最新版本。

latestIteration

Boolean

参数解释:

是否为最新迭代版本。同一版本号下可能存在多次迭代,此字段标识是否为最后一次迭代。

取值范围:

  • true:是最新迭代版本。

  • false:不是最新迭代版本。

latestVersion

Boolean

参数解释:

是否为最新修订版本。

取值范围:

  • true:是最新修订版本。

  • false:不是最新修订版本。

master

VersionModelMasterViewDTO object

参数解释:

更新后的主对象详情,包含主对象的创建时间、系统版本等属性。

取值范围:

不涉及。

modifier

String

参数解释:

版本实例的更新者账号。

取值范围:

不涉及。

name

String

参数解释:

版本实例的中文名称。

取值范围:

不涉及。

preVersionId

String

参数解释:

前序版本实例ID,用于追溯版本变更历史。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识,用于M-V模型实例的逻辑删除管理。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

扩展类型,用于区分不同业务域的M-V模型实例。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

系统版本号,用于数据版本控制与并发冲突检测。每次更新后自动递增。

取值范围:

不涉及。

securityLevel

String

参数解释:

安全密级,标识当前版本实例的访问控制级别。

取值范围:

  • internal:内部公开。

  • secret:秘密。

  • confidential:机密。

  • top_secret:绝密。

tenant

TenantViewDTO object

参数解释:

版本实例所属的租户信息,用于多租户场景下的数据隔离。

取值范围:

不涉及。

version

String

参数解释:

版本号。

取值范围:

不涉及。

versionCode

Integer

参数解释:

业务版本内码,用于系统内部的版本排序与比较。

取值范围:

不涉及。

workingCopy

Boolean

参数解释:

是否已检出。本接口要求实例必须处于未检出状态(workingCopy=false)方可更新。

取值范围:

  • true:已检出(当前被某用户锁定编辑中)。

  • false:未检出(处于检入状态,可被管理员更新)。

workingState

WorkingState object

参数解释:

版本实例的工作状态,包含状态编码、中文名称、英文名称及别名。

取值范围:

不涉及。

表7 VersionModelBranchViewDTO

参数

参数类型

描述

className

String

参数解释:

类名。

取值范围:

不涉及。

createTime

String

参数解释:

创建时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

creator

String

参数解释:

创建者账号。

取值范围:

不涉及。

id

String

参数解释:

唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

lastUpdateTime

AnyType

参数解释:

最后更新时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

modifier

String

参数解释:

更新者账号。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

系统版本。

取值范围:

不涉及。

tenant

TenantViewDTO object

参数解释:

租户信息。

取值范围:

不涉及。

version

String

参数解释:

版本号。

取值范围:

不涉及。

表8 VersionModelMasterViewDTO

参数

参数类型

描述

className

String

参数解释:

主对象的类名。

取值范围:

不涉及。

createTime

String

参数解释:

主对象的创建时间,使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

creator

String

参数解释:

主对象的创建者账号。

取值范围:

不涉及。

id

String

参数解释:

主对象的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

lastUpdateTime

String

参数解释:

主对象的最后更新时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

modifier

String

参数解释:

主对象的更新者账号。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

主对象的扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

主对象的系统版本号。

取值范围:

不涉及。

tenant

TenantViewDTO object

参数解释:

主对象所属的租户信息。

取值范围:

不涉及。

表9 TenantViewDTO

参数

参数类型

描述

className

String

参数解释:

租户对象的类名。

取值范围:

不涉及。

code

String

参数解释:

租户编码,用于多租户场景下的租户唯一标识。

取值范围:

不涉及。

createTime

String

参数解释:

租户对象的创建时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

creator

String

参数解释:

租户对象的创建者账号。

取值范围:

不涉及。

dataSource

String

参数解释:

租户使用的数据源名称,用于多租户数据隔离。

取值范围:

不涉及。

description

String

参数解释:

租户描述信息。

取值范围:

不涉及。

disableFlag

Boolean

参数解释:

租户失效标识,用于标识租户是否已失效。

取值范围:

  • true:失效。

  • false:未失效(默认)。

id

String

参数解释:

租户的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

kiaguid

String

参数解释:

租户KIA密级。

取值范围:

不涉及。

lastUpdateTime

String

参数解释:

租户的最后更新时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

modifier

String

参数解释:

租户的更新者账号。

取值范围:

不涉及。

name

String

参数解释:

租户中文名称。

取值范围:

不涉及。

nameEn

String

参数解释:

租户英文名称。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

租户扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

租户对象的系统版本号。

取值范围:

不涉及。

securityLevel

String

参数解释:

租户安全密级,用于标识租户信息的安全等级。

取值范围:

  • internal:内部公开。

  • secret:秘密。

  • confidential:机密。

  • top_secret:绝密。

tenant

TenantViewDTO object

参数解释:

租户信息,表示当前租户的父租户信息。

取值范围:

不涉及。

表10 WorkingState

参数

参数类型

描述

alias

String

参数解释:

工作状态别名,用于系统内部的状态标。

取值范围:

不涉及。

cnName

String

参数解释:

工作状态中文名称。

取值范围:

不涉及。

code

String

参数解释:

工作状态编码。

取值范围:

不涉及。

enName

String

参数解释:

工作状态英文名称。

取值范围:

不涉及。

请求示例

示例:修订M-V模型实例(继承所有关系,不自动检出)

修订主对象ID为601815482655318016的M-V模型实例,关系复制类型为BOTH(继承所有关系实例),workingCopy设置为false(修订后不自动检出),操作人为test1。

POST https://dme.cn-north-4.huaweicloud.com/rdm_04219627d6794f37ae26e8aba250415d_app/publicservices/api/VersionModel/revise

{
  "applicationId" : "04219627d6794f37ae26e8aba250415d",
  "params" : {
    "creator" : "test1",
    "modifier" : "test1",
    "customLinkSet" : [ ],
    "masterId" : "601815482655318016",
    "workCopyType" : "BOTH",
    "workingCopy" : false
  }
}

响应示例

状态码:200

OK,表示请求成功。

{
  "result": "SUCCESS",
  "data": [
    {
      "id": "601818968927248384",
      "creator": "test1",
      "modifier": "test1",
      "createTime": 2024-02-19T06:38:10.406+0000,
      "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
      "rdmVersion": 4,
      "rdmDeleteFlag": 0,
      "rdmExtensionType": "VersionModel",
      "tenant": {
        "id": "-1",
        "creator": "xdmAdmin",
        "modifier": "xdmAdmin",
        "createTime": 2023-12-01T01:25:21.000+0000,
        "lastUpdateTime": 2023-12-01T01:25:21.000+0000,
        "rdmVersion": 1,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "Tenant",
        "tenant": null,
        "className": "Tenant",
        "name": "basicTenant",
        "description": "默认租户",
        "kiaguid": null,
        "securityLevel": "internal",
        "nameEn": null,
        "code": "basicTenant",
        "disableFlag": false,
        "dataSource": "DefaultDataSource"
      },
      "className": "VersionModel",
      "name": "modifier name",
      "description": "modifier description",
      "kiaguid": "18409de0386546f8af4bb6c1dc5cf50f",
      "securityLevel": "internal",
      "master": {
        "id": "601815482655318016",
        "creator": "test1",
        "modifier": "test1",
        "createTime": 2024-02-19T06:38:10.419+0000,
        "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
        "rdmVersion": 4,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "VersionModelMaster",
        "tenant": {
          "id": "-1",
          "creator": "xdmAdmin",
          "modifier": "xdmAdmin",
          "createTime": 2023-12-01T01:25:21.000+0000,
          "lastUpdateTime": 2023-12-01T01:25:21.000+0000,
          "rdmVersion": 1,
          "rdmDeleteFlag": 0,
          "rdmExtensionType": "Tenant",
          "tenant": null,
          "className": "Tenant",
          "name": "basicTenant",
          "description": "默认租户",
          "kiaguid": null,
          "securityLevel": "internal",
          "nameEn": null,
          "code": "basicTenant",
          "disableFlag": false,
          "dataSource": "DefaultDataSource"
        },
        "className": "VersionModelMaster"
      },
      "branch": {
        "id": "601818968927248385",
        "creator": "test1",
        "modifier": "test1",
        "createTime": 2024-02-19T06:38:10.464+0000,
        "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
        "rdmVersion": 4,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "VersionModelBranch",
        "tenant": {
          "id": "-1",
          "creator": "xdmAdmin",
          "modifier": "xdmAdmin",
          "createTime": 2023-12-01T01:25:21.000+0000,
          "lastUpdateTime": 2023-12-01T01:25:21.000+0000,
          "rdmVersion": 1,
          "rdmDeleteFlag": 0,
          "rdmExtensionType": "Tenant",
          "tenant": null,
          "className": "Tenant",
          "name": "basicTenant",
          "description": "默认租户",
          "kiaguid": null,
          "securityLevel": "internal",
          "nameEn": null,
          "code": "basicTenant",
          "disableFlag": false,
          "dataSource": "DefaultDataSource"
        },
        "className": "VersionModelBranch",
        "version": "A"
      },
      "latest": true,
      "latestIteration": true,
      "versionCode": 1,
      "iteration": 1,
      "version": "A",
      "latestVersion": true,
      "workingCopy": false,
      "workingState": {
        "code": "CHECKED_IN",
        "cnName": "已检入",
        "enName": "checked in",
        "alias": "CHECKED_IN"
      },
      "checkOutUserName": null,
      "checkOutTime": null,
      "preVersionId": null
    }
  ],
  "errors": []
}

状态码

状态码

描述

200

OK,表示请求成功。

错误码

请参见错误码

相关文档