本体工程:如何呈现 (Ontology Engineering: How to present)

本体工程:如何呈现 (Ontology Engineering: How to present)

2026/07/23 logic 19 分钟阅读
综述笔记

对象浏览器 (Object Browser)

打开对象浏览器时,会显示以下主页。这是一个概览中心,用户可以在这里开始探索对象,既可以带着特定问题开始探索,也可以发现可能的对象类型。从此视图中,用户可以执行以下主要操作:

  • 通过搜索栏搜索平台对象领域的所有内容: 可用于搜索单个对象、对象类型、已保存的探索或模块(基于对象的应用程序)。这些搜索结果将包含对象类型、属性类型、已保存的探索的标题和/或元数据(例如名称、描述等)、任何单个物品的所有权或财产。
  • 探索一组对象类型: 对象类型分组也会反映在全局搜索栏中。左侧选项卡中提供了预配置的分​​组,您也可以在“对象类型”下快速配置自定义分组。在此处选择一个对象类型分组,即可在更精细的对象类型集合中执行搜索,然后再选择要浏览的对象类型。
  • 预览特定对象类型: 点击对象预览即可快速查看对象类型(无需进入更详细的探索页面)。在预览中,您可以找到有关对象类型的信息,包括描述、属性和关联对象类型。点击“开始探索”即可开始对该对象类型进行新的探索。
  • 选择特定对象类型进行探索

在搜索目标对象时,可以使用侧边栏进行导航,侧边栏导航包括所有结果视图、对象类型过滤器、对象类型组、产物这四个视图。

使用对象浏览器进行搜索时,搜索过程会结合引号、逻辑运算符、通配符、模糊搜索的方式来实现。

对象浏览器中的文本搜索机制

在 Foundry 平台上进行文本搜索,包括在对象浏览器、工作区以及函数 API 中进行的搜索,都是基于一种名为“分析器”的底层搜索机制来实现的。了解分析器的工作原理有助于编写更高效的搜索查询,从而在应用程序中打造更好的搜索体验。

分析器类型 (Analyzer Types)

用于处理字符串属性的分析器是在 ontology 中配置好的。以下是可用的分析器类型:

分析器(Analyzer)核心行为示例值最终生成的 Token
标准(Standard,默认)按空格和标点分割,并转换为小写The Quick-Brown Foxthe, quick, brown, fox
简单(Simple)按非字母字符分割,转换为小写,忽略数字和标点The Quick-Brown Fox 42the, quick, brown, fox
未分析(Not analyzed)整个文本作为单个 Token 存储The Quick-Brown FoxThe Quick-Brown Fox
空白(Whitespace)仅按空白字符分割,保留大小写The Quick-Brown FoxThe, Quick-Brown, Fox
语言(Language)使用特定语言的分词、词干提取(Stemming)和停用词去除(Stopword Removal)Running quickly(English)run, quick

另外,该文本搜索机制将下划线和点号视为令牌的一部分,而不是分隔符。这意味着:

  • banana_pudding 被存储为一个单一的标记banana_pudding ,而不是以bananapudding 的形式存储。
  • user.name 被存储为一个单一的标记user.name ,而不是以username 的形式存储。

在使用基于令牌的搜索方式时,对banana 的搜索不会匹配到banana_pudding 所代表的值。如果需要匹配这类值,可以使用通配符搜索,例如banana* ,或者考虑使用空白字符分析工具。

下表中汇总了在每种上下文中可用的搜索功能:

能力(Capability)对象浏览器(Object Explorer,全局)对象浏览器(Object Explorer,属性过滤器)研讨会筛选列表(Workshop Filter List)功能 API(Functions API)
标记搜索(Token Search)支持(Yes)支持(Yes)支持(Yes)支持(Yes)
短语搜索(Phrase Search)支持(引号)不支持支持(精确模式 Exact Mode)支持(.phrase()
前缀搜索(Prefix Search)支持(term*支持(Starts With)支持(All Mode)支持(.phrasePrefix().prefixOnLastToken()
前导通配符搜索(Leading Wildcard Search)不支持支持(需要 Render Hint)不支持不支持
通配符搜索(Wildcard Search)支持(*?不支持支持(All Mode)不支持
模糊搜索(Fuzzy Search)支持(~不支持不支持支持(.fuzzyMatchAnyToken().fuzzyMatchAllTokens()
布尔运算符(Boolean Operators)支持(AND、OR、NOT)不支持支持(Advanced Mode)支持(Filters.and()Filters.or()Filters.not()
正则表达式(Regular Expressions)不支持不支持支持(Regex Mode)不支持

另外,对象浏览器也支持使用 SQL 语言分析对象,可以通过输入对象类型的名称来搜索该对象。系统会弹出一个自动补全窗口,让你能够快速选择并填充该对象类型的完整 RID,或者也可以使用对象类型的 API 名称。

通过图表探索

在对象浏览器中,支持通过图表进行探索,一旦选择了要探索的对象类型,探索界面就会显示用于搜索和过滤的图表。若需根据链接对象的属性进行过滤,则可以从搜索菜单的左侧选择相应的链接对象类型。在探索视图中,图表标题会显示当前筛选的是某个链接对象的属性。在提供的示例中,最上面的两个图表是根据所选类型的属性进行筛选的,而最下面的两个图表则是根据链接对象的属性进行筛选的。

对象浏览器支持多种图表类型,用于展示不同的属性数据,包括:

  • 列表图形式 (Listogram): 展示非数值属性的汇总信息。这适用于字符串、布尔值和数组属性。在示例中,图表列出了所有员工的名字,以及拥有该名字的员工的数量。
  • 饼图形式 (Pie Chart): 非数字类型的属性(如布尔值或字符串)也可以使用饼图来展示。可以通过图表配置选项选择“饼图”选项来实现这一功能。
  • 直方图形式 (Histogram): 直方图以条形图的形式展示数值或日期属性的汇总结果。
  • 网格图形式 (Grid Plots): 显示两个属性的颜色编码:X 轴上表示所选的属性,Y 轴上表示另一个分组属性。
  • 单个统计数据 (Single Statistic): 展示了一组对象在某个数值属性上的汇总值。可以选择一个属性以及聚合方式(总和、平均值、最小值、最大值、数量、唯一数量)。该图表无法用于过滤操作。
  • 统计表格 (Statistics Table): 显示了按照其他属性进行分组后的数值属性的汇总数据,这些表格可以进行排序。可用的汇总函数包括求和、最小值、最大值、平均值和计数等。
  • 地图 (Maps): 任何地理点类型属性的默认显示方式都是使用集群图,其中通过缩放的气泡来展示对象的数量,或者其他聚合结果。类型包含集群地图、等比例地图等。

最后,上述方式可以在结果查看页面核查,结果视图以表格形式展示探索成果,且用户可自由配置和调整。另外还可以通过比较对象集实现不同对象集之间的对比观察。

对象视图 (Object Views)

对象视图是可重复使用的对象数据表现形式,充当了与对象相关的所有信息的中心枢纽,包含了关于对象的关键信息,如属性数据、对象链接以及相关应用等。

对象视图概览:以对象为中心汇聚属性、链接、相关应用与关键信息的中心枢纽
对象视图概览 (Object Views Overview)

对象视图有两种类型:

  • 标准对象视图 (Standard Object Views): 这是一种标准化、即插即用的表示方式,能够自动反映某个对象类型的配置信息。标准对象视图适用于所有对象类型,能够提供一种一致的方式来查看对象数据,而无需进行任何配置操作。了解更多关于标准对象视图的信息。
  • 配置的对象视图 (): 这些可完全自定义的表示形式是通过 Workshop 工具构建的,您可以对其进行配置,以为目标工作流程提供特定的体验。当某个配置好的对象视图被创建后,它就会成为默认的视图;不过用户仍然可以随时切换回标准的对象视图。

标准对象视图

在 Ontology 中创建和配置对象类型时,Foundry 会自动生成一个标准对象视图,以标准化的方式展示所有对象的信息。这样其他用户就能整体了解该对象的架构和关联信息。标准对象视图会根据对象类型的配置来展示重要属性,如果这些属性属于时间序列、媒体引用或地理空间属性,则会以专门的表格或其他可视化格式进行展示。普通属性会以常规表格的形式显示,而隐藏的属性则不会呈现出来。

醒目的性质标识 (Prominent Property Displays)

被标记为“突出”的属性会根据其类型获得额外的视觉处理:

  • 媒体引用属性 (Media Reference Properties): 通过专门的媒体查看器进行渲染,可以查看所有支持的媒体类型。
  • 时间序列属性 (Time Series Properties): 以交互式图表的形式展示时间序列数据模式。
  • 地理空间属性 (Geospatial Properties): 具有显著的地理哈希值、地理形状或地理时间序列引用属性的对象会在地图上显示出来。同时,那些能够表示对象随时间变化的纬度和经度属性的时间序列属性也会在地图上被展示出来。
  • 其他类型的性质 (Other Property Types): 所有其他较为突出的性质都以更大的卡片格式展示,这些卡片位于一个表格的上方,而标准性质则展示在表格中。

在标准对象视图中,会提供关联对象组件,允许用户直接在标准对象视图中浏览链接到的对象。使用标准对象视图中的“链接对象”组件来实现以下目的:

  • 查看按链接类型分类的链接对象。
  • 在保持当前视图不变的情况下,可以预览链接对象的属性。
  • 在新标签页中打开一个链接对象的子集,以便进行进一步的探索。
  • 在标准对象视图的侧面板中,可以预览选定的关联对象。

在“对象视图”中,每个工作区模块都有各自的版本。这两个版本编号都出现在对象视图编辑器的标题中。

本体管理器 (Ontology Manager)

Ontology Manager(有时也被称为 Ontology 管理应用程序或 OMA)使用户能够构建和维护组织的 Ontology;可以使用 Ontology Manager 开展各种与 Ontology 相关的操作,比如创建新的对象类型、定义新的动作类型、将数据连接到 Ontology 中,以及检查数据是否在用户应用程序中得到了更新。

顶点 (Vertex)

Vertex 能够让用户在现实世界的组织的数字孪生模型中,可视化并量化各种因果关系。通过使用 Vertex 工具包,用户可以访问并探索由组织整理发布的现有图表,或者创建新的系统图表。

Vertex 可以帮助用户:

  • 通过探索整个网络的实时视图,实现透明性 (Bring transparency) ,从而跨越不同的功能模块来构建高效的网络架构。
  • 重点关注那些最重要的风险与机遇 (Focus on what’s important) ,以及它们如何影响我们的目标。
  • 通过结合分析和运营来模拟未来趋势 (Simulate the future) ,从而找到最具影响力的变革措施。
  • 通过提高数据的清晰度和模型的准确性来学习和优化 (Learn and optimize) ,从而找出有效的解决方案,并朝着全局最优的目标努力。

机械 (Machinery)

许多现实世界中的事件可以被视为某种过程,比如商业流程、政府运作或医疗操作。在过程中,诸如文档、设备或人员这样的实体会随时间发生状态变化。Machinery 应用程序使用户能够理解和管理过程的各个方面,识别不必要的行为,并朝着期望的结果进行改进。借助 AIP 的 LLM 功能支持,用户可以将 Machinery 作为协调多步骤 AIP 工作流程中多种自动化的可靠框架。支持的工作流程包括:

  • 借助 AIP 和自动化技术来解决流程效率低下的问题
  • 通过协调多个 AI 代理来全面管理 AIP 用例的运作过程
  • 从外部事件日志中收集实时数据,以了解现有流程的运作情况
  • 定义并监控性能指标和预期目标,以便发现流程中的瓶颈问题
  • 构建能够实时监控人类干预的运营应用程序,以管理 AIP 工作流程

Machinery 的示例用例和工作流程包括:

  • 保险业务 (Insurance): 涵盖从最初提交索赔到最终决策整个过程。其中包括对相关文件的 OCR 处理、半自动化处理,以及人工审核环节。
  • 医院运营 (Hospital Operations): 全面模拟患者从入院到出院的整个就医过程。通过生成医疗文档来支持医院的正常运作。
  • 采购到付款模式 (Purchase-to-pay): 从需求提出到付款整个过程,可以优化工作流程的效率。
  • 从订单接收到付款完成的整个销售流程 (Order-to-cash) 都应得到优化,以提升客户满意度和现金流。

在现实世界中,诸如文档、设备或人员之类的实体会随时间经历不同的状态。许多这些过程对象可以相互连接,从而表示参与该过程的多个实体。在 Machinery 中,可以通过过程容器来建模这些过程,这些容器包含了状态和操作信息。这些过程容器可以相互连接,甚至可以嵌套在一起。过程中的各个实体,也被称为“过程对象”,可以在你的本体中用某种对象类型来表示,比如 Claim、Flight 或 Employee 等。这种对象类型必须拥有一个字符串类型的属性,用来表示该对象的当前状态。

状态 (State)

状态”指的是对象的当前状况,比如正在进展中或已经交付完成。可能的状态应该是可以列举出来的。例如,Name 这种属性就不合适,因为可能的名称数量几乎是无限的。状态转换表现为状态节点之间的边。

在任何给定时间,每个对象都必须处于某种状态之中。那些不符合这一规则的情况,应该被建模为一个过程层次结构。例如,一名员工可能同时处于“新入职”或“已入职”的状态,同时也可能处于“已支付工资”或“等待支付工资”的状态。这些状态应该作为独立的流程来处理,而一个父进程则负责跟踪该员工是否应该获得工资支付。

动作与自动化 (Action and automations)

行为是导致状态转换的原因。在平台上发生的状态变化都是由某个行为所驱动的。你可以将这些行为导入到 Machinery Graph 中,并明确它们在整个过程中的作用。

另外 Machinery 中还包含处理日志。

在 Machinery 中可以构建状态图。其中,状态之间的边缘表示状态之间的转换。当将动作或自动化流程连接到各个状态时,这些边缘就具有以下的语义:

  • 输入状态 (Input States): 在操作执行之前允许的对象状态。对于 Foundry 操作,可以通过提交标准来实现这一点。你可以在操作节点的详细信息面板中查看现有的提交标准。
  • 输出状态 (Output States): 在某个操作执行后可能产生的结果状态。例如,一个提取实体的操作,可能会产生提取成功或提取失败的结果。虽然这些输出状态无法被强制实施,但可以通过查看 Machinery 中的操作逻辑来手动验证这些状态。
  • 自动化操作 (Automations): 这是一种在达到特定输入状态时自动触发的操作。自动化操作还可以发送通知,即描述状态的一种副作用。

铸造厂 (Foundry)

Foundry Rules(之前名为 Taurus)允许用户通过一种点击式、低代码级别的界面来主动管理 Foundry 中的复杂业务逻辑。利用 Foundry Rules,用户可以创建规则,并将这些规则应用于数据集、对象以及时间序列数据,从而满足各种需求,例如生成警报或进行分类处理等。

在 Foundry 规则中,有几个概念是基本且重要的:

  • 对象模型 (Object Model): Foundry 规则中的对象具有属性,这些属性可以通过规则提案来进行管理。
  • 工作区应用程序 (Workshop Application): 铸造规则是由工作区应用程序来管理的,该应用程序通常包含规则编辑器以及提案审核功能。
  • 规则逻辑 (Rule Logic): Foundry 规则编码了旨在实现特定工作流程的业务逻辑。这种逻辑具有特定的结构,能够定义对数据的一系列处理操作。
  • Foundry 规则的工作流配置 (Foundry Rules Workflow Configuration:): 可以通过工作流配置编辑器来配置 Foundry 规则。该编辑器是工作流管理员用来根据自己需求定制 Foundry 规则的界面。

在 Foundry 规则中,有两个主要的对象模型概念与之相关:一个是适用于数据的规则,一个是改变了规则修正方式的提案制度。

规则是标准对象,其组成部分包括:

  • 一系列规则元数据属性,例如名称、描述、作者、规则类型等。
  • 一系列用于过滤后的数据集的自定义属性,或者可以传递给 transform 函数的参数。
    • 对于“警报模式”,这些可能分别是alert_severityalert_assigneepriority
    • 对于“分类”模式来说,这些可能对应的就是groupsub-group 等标识符。
  • 一个逻辑属性,包含了该规则中的匹配条件。
    • 该逻辑被存储为一个压缩后的 JSON 格式数据,该数据遵循特定的语法规则,能够确保序列化的一致性。

在许多规则管理应用中,都会有一些关于规则创建、编辑和删除的审核流程要求。为了满足这些需求,Foundry Rules 支持以“拉取请求”的方式来提交、审核和监控规则的变更。这种机制类似于软件开发中的“拉取请求”概念,即一个规则在同一时间可以有多个变更提案。

Object Storage V2 架构:对象存储的分层架构示意
Object Storage V2 架构 (OSv2 Architecture)

关联路线图节点

关联成果

相关文章

💬 评论与讨论

使用 GitHub 账号登录即可参与讨论 · 选中正文文字可引用评论