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

構造体メインフィールド [ベータ版]

ベータ版

構造体メインフィールドは開発のベータ版段階にあり、お使いのエンロールメントでは利用できない場合があります。開発が活発に進められている間は、機能が変更される可能性があります。

構造体メインフィールドを使用すると、構造体の中心となる値と補足的なメタデータを指定できます。たとえば、Address 構造体では、streetName と postalCode を格納するフィールドをメインの値とし、collectionDate や collectorName などのほかのフィールドを、Address の取得方法を説明するメタデータとすることができます。

多くの構造体プロパティはこのパターンに従います。1個以上のフィールドには、アプリケーションでの表示を最も重視する主要なデータが格納され、ほかのフィールドにはコンテキスト、追跡情報、または監査の詳細情報が格納されます。

サポートされている構造体フィールドのデータ型は、いずれもメインフィールドとして指定できます。

構造体メインフィールドを使用する場面

次の場合に構造体メインフィールドを使用します。

  • 構造体に、補足的なメタデータを表すフィールドに加えて、中心となる値のフィールドが含まれている場合。
  • メタデータへのアクセスを維持しながら、テーブル表示をすっきりさせたい場合。
  • 構造体の1個のフィールドまたは一部のフィールドのみを使用して、インターフェースを実装する必要がある場合。

構造体メインフィールドを設定する

  1. Ontology Manager に移動します。
  2. 左パネルのリソースでオブジェクトタイプを選択し、オブジェクトタイプを検索して選択します。
  3. オブジェクトタイプのプロパティタブで、設定する構造体プロパティを選択します。
  4. 右側のプロパティエディターパネルに表示される全般タブの構造体フィールドセクションで、指定するフィールドを選択します。
メインフィールドの設定場所
  1. {propertyName} 構造体フィールドを編集ポップアップウィンドウで構造体メインフィールドをオンにしてから、確認を選択します。複数のメインフィールドを指定でき、フィールドのパネルをクリックしてドラッグすることで、わかりやすい順序に並べ替えられます。
構造体メインフィールドの切り替え
  1. 変更を保存します。設定したメインフィールドには、構造体フィールドリスト内で構造体メインフィールドタグが表示されます。
構造体メインフィールドのタグ

アプリケーションでの構造体メインフィールドの表示

構造体メインフィールドをサポートするアプリケーションでは、Workshop のオブジェクトテーブルウィジェットやオブジェクトリストウィジェットなどのコンパクトな表示ではメインフィールドのみが表示され、展開表示やホバー時に構造体全体にアクセスできます。これにより、構造体のすべてのフィールドを表示せずに最も重要なデータをすばやく確認でき、必要なときには構造体全体を確認することもできます。

アプリケーションは、いくつかの方法で構造体メインフィールドをサポートします。

  • メインフィールドのみ: テーブルや概要カードなどのコンパクトな表示では、メインフィールドのみを表示します。
  • メインフィールドとホバー表示: デフォルトではメインフィールドを表示し、ホバー時にメタデータフィールドを表示します。
  • 構造体全体: 完全な情報が必要な詳細表示やフォームでは、すべてのフィールドを表示します。

構造体フィールドをインターフェースで使用する

任意の構造体フィールドをインターフェースプロパティにマッピングできます。インターフェースを実装する際に、構造体プロパティから特定のフィールドを選択して、インターフェースの契約とプロパティの要件を満たすことができます。

たとえば、インターフェースが cityName という名前の String プロパティを必要とする場合、構造体プロパティの city フィールドを使用して要件を満たせます。インターフェースピッカーには、利用可能なすべての構造体フィールドがデータ型とともに表示され、適切なフィールドを選択できます。

インターフェースプロパティにマッピングする構造体フィールドの選択

構造体フィールドをインターフェースプロパティにマッピングすると、実装には構造体プロパティと、使用している特定のフィールドが表示されます。

インターフェースプロパティにマッピングされた構造体フィールド

ピッカーではメインフィールドに構造体メインフィールドタグが表示されるため、簡単に識別できます。ただし、メインフィールドとして指定されているかどうかに関係なく、構造体の任意のフィールドを選択できます。

メインフィールドをプロパティリデューサーと組み合わせる

構造体メインフィールドをプロパティリデューサーと組み合わせると、構造体配列プロパティの表現とインターフェースの実装をさらに柔軟にできます。1個の構造体配列プロパティで、Struct Array、メインフィールドの配列型、Struct、またはメインフィールドのベースタイプを必要とするインターフェースを実装できます。

詳細な例と実装のオプションについては、プロパティリデューサーのドキュメントを参照してください。

制限事項と考慮事項

  • クエリの動作: クエリはメインフィールドだけでなく、構造体のすべてのフィールドを対象に動作します。構造体内の任意のフィールドに基づいて検索や絞り込みができます。

よくある質問

メインフィールドにするフィールドを後から変更できますか?

はい、Ontology Manager でいつでもメインフィールドを再設定できます。これにより、一部のインターフェース実装が無効になる場合があり、その場合は更新する必要があります。

メインフィールドは Foundry のデータ保存方法に影響しますか?

いいえ、メインフィールドが影響するのは、Foundry でのデータ表示とインターフェースの実装のみです。基盤となる構造体には、すべてのフィールドが元の情報を完全に保持した状態で含まれるため、引き続きすべてのフィールドに対してクエリを実行でき、アクセスもできます。

メインフィールドを構造体配列で使用できますか?

はい。メインフィールドは、単一の構造体プロパティと構造体配列プロパティの両方で機能します。リデューサーと組み合わせると、Foundry がアプリケーション全体でプロパティを表現する方法を最大限に柔軟にできます。

構造体フィールドをインターフェースで使用するには、メインフィールドを設定する必要がありますか?

いいえ。メインフィールドとして指定されているかどうかに関係なく、任意の構造体フィールドをインターフェースプロパティにマッピングできます。メインフィールドは、インターフェースピッカーで視覚的な目印となり、アプリケーションがコンパクトな表示で構造体を表示する方法に影響するだけです。