注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
特定の場合において、同じ実世界のオブジェクトに対して Foundry と Gotham の両方の表現が存在することがあります。これらのオブジェクト表現は互いに同義語となります。同義語は、実世界で同じオブジェクトを正確に表現する異なるリソースです。これらの同義語はタイプマッピングを用いて互いにマッピングされ、同義の表現として確立されます。
Foundry と Gotham の互換性を高めるために、データエンリッチメントを実装して既存の同義語を識別できます。ドラッグアンドドロップによるデータエンリッチメントは、Foundry と Gotham 間でマッピングされた同義の表現を発見することにより、ワークフローを変革し、ユーザーのアプリケーションと Palantir プラットフォーム間の相互運用性を向上させます。
データエンリッチメントにアクセスするには、ユーザーのエンロールメントで Gotham と Foundry の両方が有効であり、タイプマッピングが有効になっている必要があります。アプリケーションが Gotham または Foundry のみでドラッグアンドドロップ操作を行う場合、データエンリッチメントを実装する必要はありません。
以下のチュートリアルに進む前に、ドラッグアンドドロップの概念と実装に関する基本的な理解のために、概要およびドラッグアンドドロップの統合ポイントを作成するチュートリアルを確認してください。
サンプルユースケースとして、アプリケーションが Gotham オブジェクト ID を認識し、アプリケーションから Foundry アプリケーションに Gotham オブジェクト ID データをドラッグするワークフローを作成したいとします。まず、以下の dragstart
ハンドラーを使用して、Gotham オブジェクト ID を DataTransfer に書き込もうとするかもしれません。カスタム Palantir メディアタイプ application/x-vnd.palantir.rid.gotham.object
に注意してください。
Copied!1 2 3 4 5 6 7 8
function handleDragStart(event) { // ドラッグ操作が開始されたときに呼び出される関数 event.dataTransfer.setData( "application/x-vnd.palantir.rid.gotham.object", // データタイプを指定 JSON.stringify(["ri.gotham.XXXXXXXX", "ri.gotham.YYYYYYYY"...]) // データをJSON文字列に変換して設定 ); event.dataTransfer.effectAllowed = "move"; // ドラッグ中に許可される操作を「移動」に設定 }
Foundry のドロップゾーンにデータをドラッグしようとすると、そのドロップゾーンが「光らない」ことに気付くかもしれません。これは、そのドロップゾーンに対して有効なメディアタイプではないことを示しています。Foundry のドロップゾーンは、おそらく DataTransfer に Gotham 固有のメディアタイプが含まれているため、このデータを受け入れないでしょう。これを解決するには、データエンリッチメントを実装し、Foundry が Gotham オブジェクトの同義語を特定し、DataTransfer に追加するようにします。これにより、受け入れ可能なメディアタイプと同義の表現が DataTransfer に含まれるため、Foundry がユーザーのドラッグしたデータを受け入れることができるようになります。ただし、これはユーザーのエンロールメントでタイプマッピングが有効になっており、エンリッチする予定のオブジェクトに対してのみ機能します。詳細については、タイプマッピングのドキュメントを参照してください。
以下のセクションでは、データエンリッチメントのさまざまな側面がどのように機能するかについてのコンテキストを提供します。これには、データエンリッチメントを可能にするサービスの概要や、エンリッチメントを実装する時期と場所が含まれます。
データエンリッチメントは、ドラッグゾーンまたはドロップゾーンに追加できます。ドラッグアンドドロップのワークフローで、両方のドラッグゾーンとドロップゾーンにエンリッチメントを追加する必要はありません。アプリケーション間のデータの流れを特定し、データがどこから来てどこへ行くのかを判断します。
アプリケーションに、ユーザーが Gotham と Foundry のデータをドラッグするドロップゾーンが含まれている場合、ドラッグペイロードがドロップされた後にドロップゾーンでデータをエンリッチすることをお勧めします。これにより、アプリケーションは Gotham と Foundry の両方のコンセプトを認識する必要がなくなります。代わりに、アプリケーションは Gotham または Foundry のメディアタイプを受け入れ、元のドラッグペイロードが受け入れ可能なメディアタイプでなかった場合は、データエンリッチメントからの同義データを使用できます。
あるいは、アプリケーションに Foundry と Gotham の両方のドロップゾーンにドラッグできるドラッグゾーンがある場合、DataTransfer に追加する前にデータをエンリッチすることをお勧めします。これにより、ドラッグペイロードは Foundry と Gotham の両方のメディアタイプでエンリッチされ、Foundry と Gotham のドロップゾーンがドラッグペイロードを受け入れられるようになります。
データエンリッチメントを実装する際には、Data Bank Service にリクエストを行い、同義データを取得する必要があります。Data Bank Service は、Foundry と Gotham 間で同義のオブジェクト識別子を特定して返し、クロスプラットフォームのドラッグアンドドロップを可能にします。
Data Bank Service にリクエストを行うと、追加の呼び出しが必要になるため、若干のパフォーマンスコストが発生します。アプリケーションに追加されるエンリッチされたドラッグまたはドロップゾーンの数と、それに伴うパフォーマンスコストの増加を意識することをお勧めします。このサービスについてさらに詳しく知りたい場合は、Palantir の担当者にお問い合わせください。
Gotham と Foundry 間でデータをドラッグアンドドロップするワークフローが含まれる場合、エンリッチメントチュートリアルに従って、Palantir メディアタイプの力を活用してください。