跳转至

Statuses(状态(Statuses))

Every object type, property, link type, action, or interface in the Ontology has a status that indicates developmental state. An ontological resource's status can be either active, experimental, deprecated, or example; object types can also be classified as promoted. Status metadata helps Ontology-editing users to know what resources are being actively relied on by user applications. These statuses are viewable in Object Explorer, Object Views, and Workshop to provide more information about which object types are intended for use in user applications.

Active status

The status can take on one of five values:

Available Status Values

  • Promoted (object types only): Indicates that the object type is a core, trusted resource that has been vetted by an ontology owner. Promoted object types inherit similar protections as active object types for API names.
  • Active: Indicates that the resource is actively in use in user-facing applications and major breaking changes will not be made in the Ontology Manager.
  • Experimental: Indicates that the resource is still under development. Changes may be made that make the experimental item unavailable in user facing applications.
  • Deprecated: Indicates that the resource will soon be deleted. The deprecated item should not be relied on in user facing applications.
  • A deprecated resource also has metadata that includes:
    • A description for why it is being deprecated;
    • A deadline for when it is expected to be deleted from the system; and
    • The resource that is meant to replace the one that is deprecated.
  • Example: Indicates that the resource has been installed as an example. Example resources are notional and are only suitable for trainings or early-stage, exploratory use. Examples are not intended for use in production workflows.

Object types support a special promoted status to signify a higher level of trust and official standing within the ontology. This status, represented by a new purple checkmark icon, helps users differentiate core, reusable object types from more use-case-specific or experimental ones.

The promoted status provides prominence beyond the standard active status. An object type with this status is meant to be considered a "core" resource, held to high standards and managed by a central team. Promoted object types inherit similar operational protections of the active status, such as restrictions on deletion.

Key characteristics of the promoted status include:

  • Scope: The promoted status applies only to object types. It is not available for properties, link types, action types or interfaces.
  • Visibility: Setting an object type's status to promoted will automatically set its visibility to prominent, increasing its discoverability across the platform. Users can optionally move all properties of the object type to active status.
  • Permissions:
  • Only users with the Ontology Owner role on the ontology level can directly apply the promoted status.
  • Other users must submit a proposal for review and approval by an Ontology Owner on the ontology level to apply the status.

Promoted Object Type Example

Operations that are not allowed

Given that applications rely on ontological resources, there are several potentially destructive operations that are not allowed when a resource has the status active:

  • It cannot be deleted. A resource’s status must be experimental or deprecated before it can be deleted.
  • The API name of an active resource cannot be changed. Changing an API name is only possible for those marked as experimental.

Edit a status

By default, any new ontological resource will be given the experimental status. To change the status:

  1. Select the dropdown next to the current status.
  2. Select the new status.

When changing a resource to the deprecated status, you will be prompted to:

  • Fill out a description for why it is being deprecated,
  • Input a deadline for when you expect it to be deleted from the system, and
  • Optionally, select a resource that is meant to replace the one you are deprecating.

These statuses are viewable in Object Explorer, Object Views, and Workshop to provide more information about which object types are intended for use in user applications.

Change status

The Ontology Manager ensures status consistency between an object type and its related properties or link types. For example, if an object type is changed from active to experimental, all of its properties will be marked experimental as well.

The table below indicates available statuses for a link type between object types of different statuses. In general:

  • If at least one object type in a link type is changed to experimental, the link type will automatically be changed to experimental.
  • If at least one object type in a link type is changed to example, the link type will automatically be changed to example.
  • If at least one object type in a link type is changed to deprecated, the link type will automatically be changed to deprecated.
If object type A is… and object type B is…
EXPERIMENTAL
EXPERIMENTAL experimental only
ACTIVE experimental only
DEPRECATED deprecated only

The same requirements are true of foreign keys of a link type. The application will change the status of a link type when changing a property:

  • If a foreign key property is changed to experimental, its link type will be changed to experimental.
  • If a foreign key property is changed to example, its link type will be changed to example.
  • If a foreign key property is changed to deprecated, its link type will be changed to deprecated.

The application changes statuses in order to prevent invalid states. If a foreign key property is experimental and still being developed, its link type shouldn't be marked active and be relied on in production. In contrast, when marking a property active, the application won't change a link type referencing the property as its foreign key to active, as it is valid for a foreign key property to be in production, while the link type and its backing datasource are still in development.

Bulk edit statuses

Properties

When changing an object type from experimental to active, there is the option to also apply the active status to all properties on the object type:

Apply active status

When you change an object type to example, all of its properties will automatically become example also.

Statuses across properties of an object type can also be edited in bulk from the Properties page of the object type. Read more about bulk editing properties.

Object types

Statuses across object types can also be edited in bulk from the home page object view page by selecting the checkboxes of the object types to edit and selecting the Edit status button at the top right of the table.

Bulk edit object types

Troubleshooting

If you receive the error OntologyMetadata:ConflictBetweenLinkTypeStatusAndPropertyTypeStatus, there is a conflict between the status on a link type and the status on a property. For example, if a foreign key is deprecated, link types that reference that foreign key should also be deprecated.

If you receive the error OntologyMetadata:ConflictBetweenLinkTypeStatusAndObjectTypeStatus, there is a conflict between the status on a link type and the status of one of its associated object types. This can happen when there is an invalid object type-link type case according to the table above. For example, an experimental object type cannot have an active link type.


中文翻译

状态(Statuses)

本体(Ontology)中的每个对象类型(object type)、属性(property)、链接类型(link type)、操作(action)或接口(interface)都有一个表示开发阶段的状态。本体资源的 status 可以是 active(活跃)、experimental(实验性)、deprecated(已弃用)或 example(示例);对象类型还可以被归类为 promoted(已推广)。状态元数据帮助本体编辑用户了解哪些资源正被用户应用程序积极依赖。这些状态可在 Object ExplorerObject ViewsWorkshop 中查看,以提供更多关于哪些对象类型适用于用户应用程序的信息。

Active 状态

状态可以取以下五个值之一:

可用状态值

  • Promoted(仅对象类型): 表示该对象类型是经过本体所有者审核的核心、可信资源。Promoted 对象类型在 API 名称方面继承了与 active 对象类型类似的保护。
  • Active: 表示该资源正在面向用户的应用程序中积极使用,且不会在 Ontology Manager 中进行重大破坏性更改。
  • Experimental: 表示该资源仍在开发中。可能会进行更改,导致实验性项目在面向用户的应用程序中不可用。
  • Deprecated: 表示该资源即将被删除。面向用户的应用程序不应依赖已弃用的项目。
  • 已弃用的资源还包含以下元数据:
    • 弃用原因的说明;
    • 预计从系统中删除的截止日期;以及
    • 用于替代已弃用资源的资源。
  • Example: 表示该资源已作为示例安装。示例资源是概念性的,仅适用于培训或早期探索性使用。示例应用于生产工作流。

对象类型支持特殊的 promoted 状态,以表示在本体中更高的信任级别和官方地位。此状态由新的紫色勾选图标表示,帮助用户区分核心、可重用的对象类型与更特定于用例或实验性的对象类型。

promoted 状态提供了超越标准 active 状态的突出性。具有此状态的对象类型被视为"核心"资源,需达到高标准并由中央团队管理。Promoted 对象类型继承了 active 状态的类似操作保护,例如删除限制。

promoted 状态的主要特征包括:

  • 范围: promoted 状态仅适用于对象类型。不适用于属性、链接类型、操作类型或接口。
  • 可见性: 将对象类型的状态设置为 promoted 将自动将其可见性设置为 prominent,提高其在平台上的可发现性。用户可以选择将该对象类型的所有属性移至 active 状态。
  • 权限:
  • 只有在本体级别具有 Ontology Owner 角色的用户才能直接应用 promoted 状态。
  • 其他用户必须提交提案,由本体级别的 Ontology Owner 审核批准后才能应用该状态。

Promoted 对象类型示例

不允许的操作

鉴于应用程序依赖本体资源,当资源的状态为 active 时,不允许进行以下可能具有破坏性的操作:

  • 不能删除。资源的状态必须先为 experimentaldeprecated,然后才能删除。
  • 不能更改活跃资源的 API 名称。只有标记为 experimental 的资源才能更改 API 名称。

编辑状态

默认情况下,任何新的本体资源都会被赋予 experimental 状态。要更改状态:

  1. 选择当前状态旁边的下拉菜单。
  2. 选择新状态。

将资源更改为 deprecated 状态时,系统会提示您:

  • 填写弃用原因的说明,
  • 输入预计从系统中删除的截止日期,以及
  • 可选地,选择用于替代您正在弃用的资源的资源。

这些状态可在 Object Explorer、Object Views 和 Workshop 中查看,以提供更多关于哪些对象类型适用于用户应用程序的信息。

更改状态

Ontology Manager 确保对象类型与其相关属性或链接类型之间的状态一致性。例如,如果对象类型从 active 更改为 experimental,其所有属性也将被标记为 experimental

下表显示了不同状态的对象类型之间链接类型的可用状态。一般来说:

  • 如果链接类型中的至少一个对象类型更改为 experimental,该链接类型将自动更改为 experimental
  • 如果链接类型中的至少一个对象类型更改为 example,该链接类型将自动更改为 example
  • 如果链接类型中的至少一个对象类型更改为 deprecated,该链接类型将自动更改为 deprecated
如果对象类型 A 是… 且对象类型 B 是…
EXPERIMENTAL
EXPERIMENTAL 仅 experimental
ACTIVE 仅 experimental
DEPRECATED 仅 deprecated

链接类型的外键(foreign keys)也有相同的要求。当更改属性时,应用程序会更改链接类型的状态:

  • 如果外键属性更改为 experimental,其链接类型将更改为 experimental
  • 如果外键属性更改为 example,其链接类型将更改为 example
  • 如果外键属性更改为 deprecated,其链接类型将更改为 deprecated

应用程序更改状态是为了防止无效状态。如果外键属性是 experimental 且仍在开发中,其链接类型不应标记为 active 并在生产环境中依赖。相反,当将属性标记为 active 时,应用程序不会将引用该属性作为外键的链接类型更改为 active,因为外键属性可以在生产环境中使用,而链接类型及其支持的数据源仍在开发中,这种情况是有效的。

批量编辑状态

属性

当将对象类型从 experimental 更改为 active 时,可以选择同时将该对象类型的所有属性应用 active 状态:

应用 Active 状态

当您将对象类型更改为 example 时,其所有属性也将自动变为 example

对象类型各属性的状态也可以从对象类型的 Properties 页面进行批量编辑。了解更多关于批量编辑属性的信息。

对象类型

对象类型的状态也可以从主页对象视图页面进行批量编辑,方法是选择要编辑的对象类型的复选框,然后选择表格右上角的 Edit status 按钮。

批量编辑对象类型

故障排除

属性状态与链接类型状态冲突

如果您收到错误 OntologyMetadata:ConflictBetweenLinkTypeStatusAndPropertyTypeStatus,则表示链接类型上的状态与属性上的状态存在冲突。例如,如果外键是 deprecated,引用该外键的链接类型也应为 deprecated

对象类型状态与链接类型状态冲突

如果您收到错误 OntologyMetadata:ConflictBetweenLinkTypeStatusAndObjectTypeStatus,则表示链接类型上的状态与其关联对象类型之一的状态存在冲突。当根据上表存在无效的对象类型-链接类型情况时,可能会发生这种情况。例如,experimental 对象类型不能有 active 链接类型。