注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

インターフェース

インターフェースは、オブジェクトタイプの形式と機能を記述するオントロジーのタイプです。インターフェースを使用すると、共通の形式を持つオブジェクトタイプを一貫してモデル化し、それらとインタラクションできます。たとえば、Facility インターフェースには Facility Name プロパティと Location プロパティを含めることができます。Facility は、Airport、Manufacturing Plant、Maintenance Hangar などのオブジェクトタイプで実装でき、それぞれにタイプ固有のプロパティを追加で含めることができます。

`Facility` インターフェースの例。

Facility インターフェースを使用すると、ワークフローは Airport、Manufacturing Plant、Maintenance Hangar の各オブジェクトタイプの具体的な詳細を知らなくても、それらをまとめて、または個別に操作できます。また、Facility インターフェースを実装する新しいオブジェクトタイプが導入された場合、追加のリファクタリングを行わなくても、ワークフローはその新しいオブジェクトタイプに即座に対応します。

プラットフォームのどこでインターフェースを使用できるかについては、現在のサポート状況を確認してください。

インターフェースの機能

インターフェースは、インターフェースプロパティ、リンクタイプ制約、アクションタイプ制約、およびインターフェースに関するメタデータで構成されます。インターフェースプロパティは、インターフェース上でローカルに定義する(推奨)か、共通プロパティを使用して定義できます。インターフェースは複数のオブジェクトタイプで実装できます。

プログラミング言語のインターフェースと同様に、インターフェースを拡張して元のインターフェースのプロパティを継承する子インターフェースを作成し、その子インターフェースに新しい、より具体的なプロパティを追加できます。その後、オブジェクトタイプでインターフェースを実装することで、インターフェース定義に準拠していることを示せます。オブジェクトタイプは、異なるワークフローで使用するために複数のインターフェースを実装できます。インターフェースは、別のインターフェースを拡張しているインターフェースも含め、複数のほかのインターフェースを拡張することもできます。その結果、インターフェースの階層を通じてプロパティが継承されます。

インターフェースとオブジェクトタイプの違い

オントロジー内のインターフェースとオブジェクトタイプには、機能面と見た目の両方に違いがあります。

オブジェクトタイプは具象的です。共通プロパティまたはローカルプロパティによって定義されたスキーマを持ち、プロパティ値を含むデータセットに基づいており、オブジェクトとしてインスタンス化できます。

一方、インターフェースは抽象的です。インターフェースプロパティによって定義されたスキーマを持ち、データセットには基づいていません。直接インスタンス化することはできず、特定のオブジェクトタイプとしてインスタンス化する必要があります。

見た目の点では、プラットフォーム上のインターフェースはアイコンの周囲に破線があることで、オブジェクトタイプと視覚的に区別されます。

インターフェースアイコンの例

インターフェースの権限

インターフェースの権限は、オントロジーロールを通じて設定されます。

現在のサポート状況

インターフェースのオントロジータイプに対するサポートが拡大するにつれて、Palantir プラットフォーム内での利用可否は異なります。

インターフェースは現在、次のアプリケーションとサービスでサポートされています。

  • Ontology Manager: インターフェースを定義、編集、実装します。
  • Marketplace: インターフェースをパッケージ化してインストールします。
  • Functions: TypeScript v2 関数。

インターフェースは、次のアプリケーションとサービスで部分的にサポートされています。

  • Actions: インターフェースを実装するオブジェクトを作成、変更、削除、またはリンクするアクションを定義します。インターフェースのアクションタイプ制約はベータ版であり、インターフェースを実装するオブジェクトタイプ全体にわたって期待されるアクションの機能を定義するために使用できます。
  • Object Set Service: インターフェースを使用してオブジェクトを検索し、並べ替えます。インターフェースによる集計のサポートは開発中です。インターフェースのリンクタイプのサポートは開発中です。
  • オントロジー SDK: インターフェースを、それを実装するオブジェクトタイプを操作するための API レイヤーとして使用します。サポートは言語によって異なります。現在は TypeScript がサポートされており、Java と Python のサポートは開発中です。
  • Workshop: インターフェースに基づくオブジェクトセットを作成し、対応するウィジェットでインターフェースプロパティを使用します。サポートはウィジェットによって異なるため、一部のウィジェットでは、インターフェースに基づくオブジェクトセットをオブジェクトタイプに基づくオブジェクトセットとして扱います。

インターフェースは積極的に開発が進められていますが、次の機能ではまだサポートされていません。

  • Functions: TypeScript v1 関数および Python 関数

インターフェースを使いはじめる

オントロジーにインターフェースを追加するには、新しいインターフェースを作成するか、既存のインターフェースを拡張します。インターフェースができたら、適切な形式のオブジェクトタイプでそのインターフェースを実装できます。また、オントロジーの進化に合わせて、組織により適したものになるようインターフェースを編集できます。