更新时间:2024-12-23 GMT+08:00
分享

创建接口模型

操作场景

工业数字模型驱动引擎-数据建模引擎(xDM Foundation,简称xDM-F)提供的功能不能满足用户的需求时,支持用户自定义接口模型。接口模型可被数据实体作为父继承,继承其属性和关系。通过接口模型,实现建模时对各类型模型的公共特性进行抽象&接口化。例如,单板、整机、设备等实体均包含BOM编码、生产日期和资产编码属性,用户可创建一个接口模型,包含这三个属性。而创建实体时,勾选该接口模型即可。

前提条件

登录应用设计态

步骤1:填写基本信息

  1. 在左侧导航栏中,选择数据模型管理 > 接口模型,进入接口模型页面。
  2. 单击“创建”
  3. 在展开的创建接口模型页面,设置如下信息。

    图1 基本信息
    表1 参数说明

    参数

    参数说明

    英文名称

    接口模型的英文名称。

    需以大写字母开头,只能包含字母、数字和“_”,长度不能超过60个字符。

    中文名称

    接口模型的中文名称。

    只能包含中文、英文字母、数字、“_”和“-”,长度不能超过128个字符。

    英文描述

    接口模型的英文描述。

    不能包含中文字符,长度不能超过1024个字符。

    中文描述

    接口模型的中文描述。

    支持各种字符,长度不能超过1024个字符。

    模型分类

    xDM-F提供如下两种模型,请根据实际需求进行选择。

    • 业务数据模型:用于承载业务数据的模型。
    • 系统配置模型:用于承载为实现业务逻辑而增加的模型,该模型不会与上下游集成。

    同步至LinkX-F

    如果您希望此模型上的属性可以自定义是否入图时,您可以开启此配置项。

    • 是:此模型上的属性可以自定义是否入图。
    • 否:此模型上的属性都不入图。默认为“否”

  4. 单击“保存”

步骤2:新增属性

  1. 选择“属性”页签,进入属性页面。
  2. 单击“新增”

    图2 基本属性

  3. 在弹出的窗口中,填写如下信息,单击“保存”

    也可单击“保存继续创建”,添加多个属性。

    图3 新增属性
    表2 接口模型属性-参数说明

    类型

    参数

    参数说明

    基本信息

    英文名称

    属性的英文名称。

    需以字母开头,只能包含字母、数字和“_”,长度不能超过58个字符。

    不能以数据库的关键词作为属性的英文名称,例如where、select等。

    xDM-F会自动以类小驼峰方式转换属性的英文名称,以作为key值存储至系统中。后续您在调用API时,请避免使用实际定义的属性英文名称作为参数名。例如,您定义的属性英文名称为“Part_model_mumber”,调用API时需使用“part_Model_Mumber”作为参数名。

    中文名称

    属性的中文名称。

    只能包含中文、英文字母、数字、“_”和“-”,长度不能超过58个字符。

    英文描述

    属性的英文描述。

    不能包含中文字符,长度不能超过1024个字符。

    中文描述

    属性的中文描述。

    支持各种字符,长度不能超过1024个字符。

    类型

    xDM-F提供如下属性类型,请根据实际需求进行选择。
    • 文本:可存储较短的字符串数据,文本长度不能超过4000个字符。
    • 长文本:可存储较长的字符串数据,例如大型文章。文本长度最大支持524288个字符。如果您需要存储超长的字符串数据,建议使用“文件”类型的属性进行存储。
      • 如果应用的数据库类型为mysql,对应数据库的字段类型为LongText。
      • 如果应用的数据库类型为postgresql,对应数据库的字段类型为TEXT。
    • 整型:对应数据库的字段类型为int。
    • 长整型:对应数据库的字段类型为long。
    • 浮点型:对应数据库的字段类型为float。
    • 浮点型(自定义精度):浮点型数据并且可以自定义精度。
    • 参考对象:为对象建立1:N或主外键关系,例如部门和员工。
      • 参考对象值可以选择该应用下“正在工作”“已发布”的数据模型以及默认应用(XDM)下发布的所有数据模型(不包括扩展类型子数据模型)。
      • 如果参考非默认应用(XDM)对象,则当前属性作为外键生成一条虚拟的N:1的关系。
    • 布尔值:true/flase。
    • 日期:展示为年/月/日/时/分/秒。
    • 枚举:为几乎没有变化的对象列举值,例如性别(男/女)。
    • 人员:企业/部门人员的名称。
    • URL:长度不能超过4000个字符,匹配正确格式。
    • JSON:JSON数据类型。

    属性分类

    用户自定义,可根据各维度自定义分类,便于管理属性。

    EOS日期

    EOS(End of Service,停止服务)日期主要用于标识属性的生效/失效时间。您可以通过EOS日期预设置某个属性字段的截止日期,以便于后续在业务开发时通过该参数控制相应的业务逻辑。

    约束信息

    文本长度

    “类型”选择为“文本”“长文本”时,必填项。

    其中,“文本”类型属性的最长文本长度为4000个字符,“长文本”类型属性的最长文本长度为524288个字符。

    为保障部署在数据建模引擎的应用运行态性能最优,建议您合理控制“长文本”类型属性的文本长度设置。

    有效范围

    “类型”选择为“整型”“长整型”“浮点型”“浮点型(自定义精度)”时,可根据实际业务需求进行设置。

    • 左开右开():表示不包括区间边界的两个值。例如(a,b),即a<x<b,取值不包括a和b。
    • 左闭右闭[]:表示包括区间边界的两个值。例如[a,b],即a≤x≤b,取值包括a和b。
    • 左开右闭(]:表示不包括开区间一边的边界值,包括闭区间一边的边界值。例如(a,b],即a<x≤b,取值不包括a,包括b。
    • 左闭右开[):表示不包括开区间一边的边界值,包括闭区间一边的边界值。例如[a,b),即a≤x<b,取值包括a,不包括b。

    指定合法值类型

    “类型”选择为“文本”“整型”“长整型”“浮点型”“浮点型(自定义精度)”“人员”时,可根据实际业务需求进行设置。

    仅支持输入英文名称。

    指定枚举类型

    “类型”选择为“枚举”时,必填项。

    • 如果您没有可指定的枚举类型,可选择
    • 如果您已有可指定的枚举类型,可选择已有枚举类型。
    • 在下拉选项列表中,单击枚举右侧的,可查看该枚举的详细信息。

    单位类型

    “类型”选择为“整型”“长整型”“浮点型”“浮点型(自定义精度)”时,可根据实际业务需求进行设置。

    如果您设置了单位类型,完成属性创建后,接口模型会自动创建一个英文名称格式为属性英文名称_unit“参考对象”类型属性,不可编辑。当您在运行态创建数据实例时,其“参考对象”类型的属性用于表示对应数值型属性的计量单位。

    仅支持选择xDM-F内置的国标单位,如果内置的国标单位满足不了您实际业务需求,后续您可以在应用运行态中自定义单位类型。具体操作请参见创建单位类型

    设计默认单位

    “单位类型”设置单位时,必填项。

    如果用户在应用运行态中设置了“运行默认单位”,创建数据实例时优先选择应用运行态设置的默认单位,否则创建的数据实例默认选择“设计默认单位”

    标度

    “类型”选择为“浮点型”“浮点型(自定义精度)”时,必填项。

    小数位范围1-30,如果实例值超过标度范围,采用四舍五入方式处理。

    默认值

    “类型”选择为“文本”“长文本”“整型”“长整型”“浮点型”“浮点型(自定义精度)”“布尔值”“日期”“枚举”“人员”“URL”时,可根据实际业务需求进行设置。

    • 如果“唯一键”选择为“是”,默认值为空且不能修改。
    • 如果“指定合法值类型”设置了合法值类型,默认值只能设置为该配置项对应合法值类型中的合法值。

    参考对象

    “类型”选择为“参考对象”时,必填项。

    选择参考对象的目标端,使当前模型和选择的参考对象形成一种参考关系。

    组合关系

    默认为“否”

    参考对象类型只能选择为“否”

    密级

    支持内部公开、机密、秘密和绝密四种。

    • 内部公开:指可在公司内部公开发布的信息,不属于保密信息。
    • 秘密:是公司比较重要或敏感的信息,其泄露会使公司利益受到一定损害,但影响范围有限;适合在体系、部门或特定组织范围公开的信息。
    • 机密:对公司运营管理非常重要或内容非常敏感,其泄露会使公司利益遭受巨大损害,且影响范围广泛;只适合在极少数人员或指定岗位范围公开的信息。如:重要产品的路标规划、营销策略、经营分析报告、销售项目一览表、商务授权及价格信息。
    • 绝密:对公司市场竞争、领先对手起决定性作用,其泄露会使公司利益遭受巨大损害,且影响范围广泛;只适合在极少数人员或指定岗位范围公开的信息。如:核心算法、定价策略、战略意图。

    唯一键

    默认为“否”

    • URL、JSON、参考对象和文件类型只能选择为“否”
    • 如果“值加密”选择为“是”,唯一键只能选择为“否”

    唯一键区间

    “唯一键”“是”时,必填项。

    支持全局唯一和租户内唯一,默认为“全局唯一”

    唯一键及其区间变化时,如果历史数据与该约束有冲突,则需手动处理,发布后请谨慎更改。

    必填

    “类型”“参考对象”的属性默认为“是”,其他类型属性默认为“否”

    如果“类型”选择为“文件”,只能选择为“否”

    列表属性

    用于查询接口,作为查询条件和返回值。

    • JSON和文件类型只能选择为“否”
    • 如果“值加密”选择为“是”,列表属性只能选择为“否”

    多值

    “类型”选择为“枚举”“人员”时,必填项。

    值可变

    “类型”选择为“文本”“长文本”“整型”“长整型”“浮点型”“浮点型(自定义精度)”“参考对象”“布尔值”“日期”“枚举”“人员”“JSON”“URL”时,必填项。

    默认为“是”。如果选择为“否”,则该实例的值保存后不支持修改。

    值存储方式

    “类型”选择为“文本”“长文本”时,必填项。

    支持原值、大写和小写三种,默认为“原值”

    • 原值:实例值按照实际输入的字符串存储。
    • 大写:将实例值中小写字符串转换为大写字符串存储。
    • 小写:将实例值中大写字符串转换为小写字符串存储。

    值加密

    “类型”选择为“文本”时,必填项。

    默认为“否”。如果选择为“是”,发布后该数据将以密文方式存储在数据库中,且为longtext类型。

    • 设置值加密后,用户通过API(如get,batchGet,find,query等)获取属性时,可通过“decrypt”来解密该实体的属性。
    • 如果“唯一键”选择为“是”,值加密只能选择为“否”
    • 如果“密级”“内部公开”时,不支持值加密。
    • 如果当前属性绑定了业务编码生成器规则,值加密只能选择为“否”
    • 如果当前属性是树形结构指定的全路径字段,值加密只能选择为“否”

    索引

    “类型”选择为“文本”“整型”“长整型”“浮点型”“浮点型(自定义精度)”“日期”“人员”时,可根据实际业务需求进行设置。

    选择为“人员”时,默认为“是”;其他类型默认为“否”

    “类型”选择为“文本”时,如果应用的数据库类型为mysql,且“文本长度”的设置大于768个字符,则该配置无效,无需配置。

    入库

    默认为“是”。如果选择为“否”,发布后在数据库不会生成字段。模型发布后不能修改。

    入图

    需在填写基本信息时将“同步至LinkX-F设置为“是”,才展示该配置参数项。

    • 是:当前属性将在LinkX-F中入图。
    • 否:当前属性不在LinkX-F中入图。默认为“否”

    入图标识

    “入图”“是”时,必填项。

    此元数据在入图时的别名或标识。

    入图标识需以字母开头,只能包含字母、数字和“_”。

    引用类型

    “类型”选择为“参考对象”时,可根据实际业务需求进行设置。

    • 强引用:假设实体A参考实体B,实体B的数据实例被删除时,会返回引用信息,不允许被删除,我们称这两种引用依赖为强引用。
    • 弱引用:假设实体A参考实体B,实体B的数据实例被删除时,实体A的数据实例仍然存在,我们称这种引用依赖为弱引用。

相关文档