注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
構造体は、1個のプロパティに単一の値ではなく複数のフィールドを保持できるオントロジープロパティのベースタイプです。プロパティを定義するときにフィールドを宣言し、各フィールドにはそれぞれ名前とデータ型を指定します。この方法で、一般的なオブジェクトプロパティの多くをモデル化できます。たとえば、Full Name プロパティには firstName と lastName のフィールドを、Address プロパティには street、city、postalCode、country のフィールドを保持できます。
構造体プロパティは、データ型が構造体である単一のデータソース列に基づいています。Ontology Manager で構造体プロパティを作成するときに、その列をプロパティの元の列として選択します。オントロジーでプロパティを定義する前に、フィールドの値を単一の構造体型の列に結合すれば、元の値が異なるデータソースにあってもかまいません。
構造体プロパティには、次の制約があります。
BOOLEANBYTEDATEDECIMALDOUBLEFLOATGEOPOINTINTEGERLONGSHORTSTRINGTIMESTAMP構造体は、ElasticSearch のオブジェクトフィールド型 ↗と同様にインデックス化されるため、クエリでは各フィールドの条件が個別に評価されます。構造体プロパティが配列を保持している場合、その配列内のどの構造体も単独ではすべての条件を満たしていなくても、クエリがオブジェクトに一致することがあります。
たとえば、値の配列を保持する Full Name プロパティを考えます。オブジェクトが [{"firstName": "Ada", "lastName": "Chen"}, {"firstName": "Blake", "lastName": "Moreau"}] を格納している場合、"firstName": "Ada" AND "lastName": "Moreau" というクエリはそのオブジェクトに一致します。最初の値が firstName の条件を満たし、2番目の値が lastName の条件を満たすため、どちらの値も単独では両方の条件を満たしていなくても、両方の条件が満たされます。
構造体プロパティのサポートは引き続き拡大しているため、Palantir プラットフォーム内でも利用可能な範囲は異なります。現在、構造体は次のアプリケーションとサービスでサポートされています。
Object Storage v1(Phonograph)では、構造体はサポートされません。現在、構造体プロパティはデータセットと制限付きビューからのみ作成できます。