Thing モデルの消費
Thing モデル内の関係
Thing ShapeThing Templateは、 Thingを分類、サーチ、検索するための共通の対話パターンを共有しています。この対話モデルによって、タイプまたは分類別にアセットのリストを取得できます。たとえば、Thing Shape または Thing Template に対し、そのエンティティの QueryImplementingThings サービスを使用して、食器洗い機モデルなど、同じタイプのすべてのアセットのリストを取得するよう求めることができます。QueryImplementingThingsWithData を使用した場合、アセットのプロパティとアセットリストを取得します。クエリーパラメータを追加することによって、さらに興味深い質問を行うこともできます。たとえば、ボストンから 50 マイルの範囲内にある (Thing Template によって定義されている) Acme Economy Lawn Tractor の位置を調べることができます。エンジンランタイムが 400 時間を超えるトラクターは保守点検が必要となる可能性があるので、そのような状態のトラクターを特定できます。Thing モデルを使用することで、組み込みのサーチ機能によってこのようなタイプのクエリーを行うことができます。
モデルのサーチ
サーチは ThingWorx に備わる機能であり、以下を行えます。
モデル名、モデル説明、および TEXT タイプのデータフィールドに対するフルテキストサーチ
モデル内の関係のサーチ (上で説明)
セマンティック タグを使用したモデルとランタイムデータのサーチ
ボキャブラリタイプのエンティティではセマンティックタグを定義できます。1 つのボキャブラリに 1 つ以上のタグを定義できます。モデルタグとデータタグは別々に保存されますが、ボキャブラリはモデルタグまたはデータタグを使用して定義します。タグは追加のインデックスのようなものであり、サーチによってモデルやデータを調べる際に使用できます。
ボキャブラリには、動的なものと (常に拡張している処理中コードをマシンデータにタグ付けするなど)、静的なもの (作業命令のステータスのリストなど。これは定義済みの作業命令ワークフローについて説明するセットです) があります。施設内のすべてのダウンタイムイベントに理由コードの特定のセットを割り当てることができます。定義済みの理由のセットとして静的ボキャブラリを使用できます。理由コード別にダウンタイムイベントをクエリーしてカウントできます。
モデルタグを使用してエンティティの定義をグループ化できます。エンティティに複数のタグを関連付けることができます。たとえば、指定したアプリケーションの一部であるエンティティをすべてサーチできます。
ランタイムデータと操作をサーチするにはデータタグを使用します。たとえば、モバイルフォンを製造しているとします。各モバイルフォンには、そのモバイルフォンを追跡可能なシリアル番号が付いています。モバイルフォンが製造環境とアセンブリ環境の工程を進むにしたがい、プラント内のマシンとプロセスからデータが集まります。モバイルフォンが新しいマシンまたは作業拠点に移動したときに、その作業拠点で集められたデータにシリアル番号をタグ付けできます。これによって、プロセス全体を通して、そのモバイルフォンのプロセスデータと状態をトレースできます。後から不具合レポートを受け取った場合に、新しいオペレータが操作するマシンで処理された各モバイルフォンに同じ不具合パターンがないか調べることができます。このように、タグ付けによってデータのサーチがさらに簡単になります。
タグを使用して、アセットを論理的にグループ化して、ある地域のサービスセンターが担当するアセットのリストをフィルタしたりすることもできます。
ThingWorx ではサーチはさまざまな方法によって実行できます。サードパーティリポジトリのインデックスを作成し、これらのサーチをネイティブの ThingWorx サーチに含めることがでます。サービス技術者がランタイムサーチを介して理由コードや製品マニュアルなどをサーチできるようにすることができます。
モデルの消費
モデルはオブジェクト指向の性質を持つので、Thing Shape または Thing Template に基づいてユーザーインタフェースを作成してから、ユーザーとの対話に基づいてランタイムでアセットを渡すことができます。Thing Shape または Thing Template のメタデータが Thing インスタンスと一致しているので、この抽象化が可能です。さまざまな方法によってモデルをクエリーすることで、アセットのセットを Web ページに渡して、ユーザー選択やサードパーティアプリケーションによる消費が可能になります。ThingWorx Mashup Builder で使用可能な ThingWorx のすべての API は、その他のアプリケーションでも使用可能であり、リクエストに応じて JSON、XML、CSV、HTML を返します。
ThingWorx の API は厳密に型指定されているので、ThingWorx Mashup Builder でドラッグアンドドロップを使用してリッチユーザーインタフェースを開発できます。詳細については、 ビジュアリゼーションThingWorx APIのセクションを参照してください。