本体对象链接类型Properties必填属性

注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

必填属性

必填属性是必须有值的Object类型属性。您可以使用此Object类型属性以验证该属性没有空值的对象,或者在其为数组属性时验证没有空数组。此验证适用于来自支持数据源的数据和通过操作进行的编辑。

必填属性摘要

在处理必填属性时,请记住以下几点:

  • 在数据索引到对象时进行验证: 当支持数据源被索引到Object存储时,会检查空值。这意味着如果支持必填属性的列包含空值,则本体论更改本身将成功。
  • 数组属性不能为空: 将数组属性设置为必填可确保至少有一个项目存在。
  • 通过操作进行的更改在应用时进行验证: 如果您尝试通过操作写入空或空值到属性,操作将无法执行。
  • 仅在Object存储V2中可用: 必填属性仅由利用Object存储V2的对象类型支持。

创建必填属性

  1. 导航到Ontology Manager
  2. 选择对象类型,然后选择要设置为必填的属性。
  3. 选择创建属性,并填写必填详细信息,包括属性名称、类型和描述。
  4. 配置部分,开启必填开关。
  5. 保存您对Ontology的更改,并等待重新索引完成。

请注意,如果当前在属性的支持列上设置了任何空值,重新索引将失败。要解决此问题,您必须更新支持数据源以不再在列中有空值,或者取消设置属性为必填。

配置窗格中切换的必填属性。

多个支持数据源的对象类型的必填属性

您可能会偶尔遇到这种情况:由多个数据源支持的对象类型的必填属性中出现空值。当某个对象的记录在某些数据源中存在,但在提供必填属性的数据源中不存在时,就会出现这种现象。

以下示例说明了这种行为。假设有一个Movie对象类型,有两个支持数据源和一个必填的Genre属性。

数据源1

Movie IdTitleBox officeRegions
101The Adventure Begins200m["USA", "Canada", "UK"]
102Love in the City75m[]
103Galactic Battles500m["USA", "UK", "Australia"]

数据源2

Movie IdBudgetGenre (Required)Director
10150mAdventureMichael John Smith
10220mRomanceJane Doe
103150mSci-Fi

如果将一个新的Movie同时添加到两个支持数据源中,而没有为Genre提供值,它将无法索引到Ontology。

然而,假设只有数据源1有新Movie对象的行。

数据源1

Movie IdTitleBox officeRegions
101The Adventure Begins200m["USA", "Canada", "UK"]
102Love in the City75m[]
103Galactic Battles500m["USA", "UK", "Australia"]
104Happy Ending150m["UK", "FRANCE"]

数据源2

Movie IdBudgetGenre (Required)Director
10150mAdventureMichael John Smith
10220mRomanceJane Doe
103150mSci-Fi

上述示例将成功索引到Ontology中,尽管结果对象没有必填属性的值。

PropertyValue
Movie Id104
TitleHappy Ending
Box Office150m
Regions["UK", "FRANCE"]
Budget
Genre (Required)
Director

同样适用于通过操作编辑创建的对象。Movie对象可以成功创建或修改,如果它们只包含与数据源1中的列相关联的属性。然而,如果操作向对象添加了来自数据源2的属性,例如Budget,那么该操作将无效并无法执行。这是因为对象现在将存在于数据源2中,因此必须设置Genre