Skip to main content
Version: 5.1.0

关联 Shared Property

当多个 Object Type 中存在语义相同、需要统一管理的属性(例如各业务表中都存在的"创建人"、"金额单位"等),可以将该属性挂接到一个已存在的 Shared Property 上,而不是为每个 Object Type 单独定义一份属性元数据。

实现原理

在源码 DefaultOntologyProperty.java 中,reference2SharedProp 方法负责完成该关联:

@Override
public void reference2SharedProp(OntologySharedProperty sharedProp) {
SharedPropertyTypeRef sharedPropertyRef = new SharedPropertyTypeRef();
sharedPropertyRef.sharedPropRef = Objects.requireNonNull(sharedProp).name;
this.typeRef = sharedPropertyRef;
}

调用该方法后,属性的 typeRef 字段会被替换为 SharedPropertyTypeRef 类型,其内部保存了被引用的 Shared Property 的名称(sharedPropRef)。此后该属性的取值类型、约束等元数据均以所关联的 Shared Property 为准,实现"一处定义、多处引用"。

操作步骤

  1. 进入目标 Object Type 的属性列表,选中需要关联的属性。
  2. 在属性编辑界面选择"关联 Shared Property"操作。
  3. 从已创建的 Shared Property 列表中选择目标项进行绑定。
  4. 保存后,该属性的类型定义将与所选 Shared Property 保持一致。

适用场景

  • 多个 Object Type 共用同一套取值类型定义(如统一的货币单位、状态码)
  • 需要统一维护某类属性的取值范围、格式校验规则
  • 希望在该 Shared Property 发生变更时,所有关联的 Object Type 属性能够同步生效

相关文档