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

管理接口模型属性

操作场景

本文指导您在应用设计态管理接口模型属性。

前提条件

登录应用设计态

新增属性

  1. 在左侧导航栏中,选择数据模型管理 > 接口模型,进入接口模型页面。
  2. 单击需要设置接口模型属性的接口模型编码,进入该接口模型详情页面。
  3. 选择“属性”页签,进入属性页面。
  4. 单击“编辑”,进入编辑状态。
  5. 单击“新增”
  6. 在弹出的窗口中,填写如下信息,单击“保存”

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

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

    类型

    参数

    参数说明

    基本信息

    英文名称

    属性的英文名称。

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

    中文名称

    属性的中文名称。

    只能包含中文、英文字母、数字、“_”和“-”,长度不能超过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的数据实例仍然存在,我们称这种引用依赖为弱引用。

删除属性

  1. 在左侧导航栏中,选择数据模型管理 > 接口模型,进入接口模型页面。
  2. 单击需要设置接口模型属性的接口模型编码,进入该接口模型详情页面。
  3. 选择“属性”页签,进入属性页面。
  4. 单击“编辑”,进入编辑状态。
  5. 勾选需要删除的属性,单击“删除”

    若删除的属性已部署至运行态,在完成“发布数据模型 > 发布应用 > 部署应用”操作后,该属性在运行态的数据将同步删除且不可恢复,请谨慎操作!

    图2 删除属性

  6. 在弹出的提示框中,单击“确定”

    如删除的属性已部署至运行态,需在弹出的提示框中先输入指令,再单击“确定”

编辑属性

  1. 在左侧导航栏中,选择数据模型管理 > 接口模型,进入接口模型页面。
  2. 单击需要设置接口模型属性的接口模型编码,进入该接口模型详情页面。
  3. 选择“属性”页签,进入属性页面。
  4. 单击“编辑”,进入编辑状态。
  5. 找到需要修改的属性,单击

    图3 编辑属性

  6. 在弹出的窗户中,修改属性的基本信息或约束信息,单击“保存”

    如果您修改的属性为已发布的关系实体属性,修改属性的基本信息或约束信息时,存在如下修改限制:

    表2 属性修改限制

    操作栏目

    限制说明

    基本信息

    • 不支持修改属性的类型。
    • 不支持通过导入数据实体的方式修改属性的英文名称。

    约束信息

    如下配置项均不支持修改:

    • 指定枚举类型
    • 指定合法值类型
    • 单位类型
    • 设计默认单位
    • 值存储方式
    • 存储方式
    • 文件格式
    • 文件最大值
    • 分块大小
    • 密级
    • 多值
    • 入库
    • 参考对象
    • 组合关系
    • 唯一键区间

    文本和长文本类型的属性不支持减少“文本长度”

    如果文本、整型、长整型、浮点型和浮点型(自定义精度)类型的属性包含如下约束配置项定义,则不支持修改。

    • “唯一键”“否”
    • “必填”“否”
    • “有效范围”为空。

    整型、长整型、浮点型和浮点型(自定义精度)类型的属性只支持扩大“有效范围”

    浮点型和浮点型(自定义精度)类型的属性只支持扩大“标度”

    仅文本、长文本、整型、长整型、浮点型和浮点型(自定义精度)类型的属性支持修改“值可变”“索引”“默认值”“列表属性”“入图”“入图标识”

相关操作

完成属性的新增、删除、编辑等操作后,您还需要发布接口模型、发布应用生成相应代码包、部署应用,更新后的属性才会在应用运行态中生效。相关操作请参见:

相关文档