ThingWorx 入门 > IoT 编程 > 使用事物模型
使用事物模型
事物模型中的关系
事物形态事物模板共享常用的交互模式以分类、搜索和查找 事物。您可通过交互模型获取按类型或分类排列的资产列表。例如,您可以通过使用某实体的 QueryImplementingThings 服务来请求事物形态或事物模板,从而获取所有相同类型资产 (例如洗碗机型号) 的列表。如果使用 QueryImplementingThingsWithData,则您可通过资产列表获取资产属性。还可以通过添加查询参数来提出更多您所感兴趣的问题。例如,您可能想要了解在距离波士顿 50 英里的范围内您的 Acme 经济型割草机所处的位置 (由事物模板定义)。您可能想要了解哪些割草机的引擎运行时大于 400 小时,因为该组割草机可能需要维修。“事物模型”通过内置的搜索功能启用了这些类型的查询。
搜索模型
搜索是 ThingWorx 内的固有功能,可以执行以下操作:
根据模型名称、模型说明以及任何类型为 TEXT 的数据字段进行全文搜索
搜索模型中的关系 (如上文所述)
使用语义 标记搜索模型和运行时数据
词汇实体类型可用于定义语义标记。词汇可以有一个或多个标记。词汇由模型标记或数据标记定义,因为这些项可以单独存储。标记就如同可以使用搜索来检查模型和数据的附加索引。
词汇可以是动态的 (例如,使用不断扩展的工作过程代码标记机器数据) 或静态的 (例如工作订单的状态列表,该列表是描述预定义工作订单工作流的集合)。您可能希望设备中的全部停机事件都有一组特定的原因代码。您可以使用静态词汇作为一组预定义的原因。您可以根据原因代码对停机事件进行查询和计数。
模型标记可用于对实体定义进行分组。实体可以具有多个与其关联的标记。例如,您可以搜索属于指定应用程序的所有实体。
数据标记用于搜索运行时数据和操作。例如,您可能正在生产手机。每部手机都具有一个序列号,您可以通过该序列号追踪手机。当您在生产和装配环境中运行手机时,您将从工厂的机器和过程中收集数据。当手机移动到新的机器或工作中心时,在工作中心收集的数据可以用序列号进行标记。因此,您可以在整个过程中追踪手机的过程数据和状态。如果您稍后收到缺陷报告,则可以确定在新操作员操作的机器上处理的每部手机都具有相同的缺陷模式。标记将通过此方法使搜索数据变得更容易。
您还可以使用标记对资产进行逻辑分组,例如筛选地区服务中心负责的资产列表。
在 ThingWorx 中,搜索以多种方式呈现。您可以创建第三方信息库的索引,并将这些搜索包括在原生 ThingWorx 搜索中。您可以允许服务技术人员通过运行时搜索来搜索原因代码、产品手册等内容。
使用模型
由于模型的面向对象这一特性,您可以根据事物形态或事物模板创建用户界面,并根据用户交互在运行时传入资产。这种抽象是可能的,因为事物形态或事物模板的元数据与事物实例匹配。通过不同的方法来查询模型,您可以将一组资产传递到网页以供用户选择,或者传递给第三方应用程序进行使用。ThingWorx 中所有可用于 ThingWorx Mashup Builder 的 API 也可用于其他应用程序,并根据请求返回 JSON、XML、CSV 或 HTML。
由于 ThingWorx 的 API 是强类型化的,因此您可在 ThingWorx Mashup Builder 中通过拖放来开发丰富的用户界面。有关详细信息,请参阅 可视化ThingWorx API 中的相关部分。