メインコンテンツまでスキップ

IModel インタフェース

名前空間: NextDesign.Core

説明

NextDesignの設計モデル情報へのアクセス手段を提供します。

所属エリア

名前説明
モデルモデルにアクセスするAPI群です。

継承元

名前説明
IObject識別可能なオブジェクトを表します。

派生先

名前説明
IFrameフレーム情報へのアクセスオブジェクトです。
IInteractionElement相互作用モデル要素情報へのアクセスオブジェクトです。
相互作用を表現する要素に共通の特性を定義します。
IFeatureプロダクトの特徴(フィーチャ)情報に対するアクセスオブジェクトです。
IProductLineModelプロダクトライン開発支援モデルに対するアクセスオブジェクトです。
IConfigurationModelプロダクトコンフィグレーションモデル対するアクセスオブジェクトです。
IProjectプロジェクト情報へのアクセス手段を提供します。
IInteraction相互作用モデル情報へのアクセスオブジェクトです。
IFeatureModelプロダクトの特徴(フィーチャ)を構造化した管理モデルに対するアクセスオブジェクトです。
IRelationship関連情報へのアクセスオブジェクトです。
IProductプロダクト情報対するアクセスオブジェクトです。

プロパティ

名前説明
ClassNameクラス名
Metaclass の名前を取得します。
Description説明
Errorsこのモデルのエラー情報のコレクションを取得します。

エラー情報にはサマリー情報を含みます。
HasErrorこのモデルにエラーがあるか調べます。
このモデルにエラーがある場合はTrueを返します。

この評価はサマリー情報を含みます。
HasErrorWithChildrenこのモデル、およびこのモデルが所有する子要素以下の要素においてエラーがあるか調べます。
このモデル、およびこのモデルが所有する子要素以下の要素にエラーがある場合はTrueを返します。

この評価はサマリー情報を含みます。
IsDeletedこのインスタンスが削除済みであるか調べます。
IsDeletingこのモデルが削除中であるか調べます。
IsDirtyこのモデルがダーティー状態(未保存)であるか調べます。
未保存の場合はTrueを返します。
IsEditableこのインスタンスが編集可能であるかを調べます。
IsProxyこのインスタンスがプロキシ要素であるか調べます。
プロキシ要素は、分散環境において、このインスタンス情報を記録したユニットが読み込まれていない場合に生成されます。
IsUnitTopModelこのインスタンスがユニットの基点モデルであるか調べます。
Metaclassクラス
ModelPathこのインスタンスのモデル階層パス
モデルのルート、プロダクトラインまたはユニットにおける基点であり親要素が読み込まれていないモデルを起点としたモデル階層を、パス区切り文字("/")で結合したパス文字列を返します。

このインスタンスが属するルートノードが、親要素が読み込まれていないモデルの場合、パス区切り文字で結合したパス文字列の先頭に「\partial;」が付与されます。
ModelUnitこのインスタンス情報を管理するユニット(物理ファイル)情報
Name名前
Ownerこのインスタンスを直接所有するモデル
このインスタンスが関連の場合、または、所有するモデルが存在しない場合は null を返します。
OwnerProjectこのインスタンスを保持するプロジェクト

メソッド

名前説明
AddErrorこのモデルに対するエラー情報を追加して、追加したエラー情報を返します。
AddNewModelこのインスタンスの指定されたフィールドに指定されたクラスのインスタンスをフィールド値として追加します。
インスタンスが、該当フィールドの末尾の要素として追加されます。
指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、該当フィールドの末尾の要素として追加されます。
指定するフィールドは、クラス型の所有フィールドでなければなりません。
多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。

また、指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。
なお、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。
AddNewModelAtこのインスタンスの指定されたフィールドに、追加位置を指定して指定されたクラスのインスタンスをフィールド値として追加します。
指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、指定された位置にフィールド値として追加します。
指定するフィールドは、クラス型の所有フィールドでなければなりません。
なお、多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。

指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。
また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。
AddNewModelToこのインスタンスの指定されたフィールドに、追加位置を指定して指定されたクラスのインスタンスをフィールド値として追加します。
指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、指定された位置にフィールド値として追加します。
指定するフィールドは、クラス型の所有フィールドでなければなりません。
なお、多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。

指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。
また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。
Asこのインスタンスが指定されたクラス型と互換するか調べます。
このインスタンスが指定されたクラス、またはそのサブクラスのインスタンスである場合に True を返します。
AsIn(IEnumerable<string>,bool)このインスタンスが複数の string 型で指定されたクラス型と互換するか調べます。
このインスタンスが指定されたいずれかのクラス、またはそれらのサブクラスのインスタンスである場合に True を返します。
AsIn(string,bool)このインスタンスがカンマ区切りの string 型で指定されたクラス型と互換するか調べます。
このインスタンスが指定されたいずれかのクラス、またはそれらのサブクラスのインスタンスである場合に True を返します。
AssignFeatureこのモデルに指定されたフィーチャを割り当てます。
AssignFeatureByNameこのモデルに指定された名前のフィーチャを割り当てます。
AssignFeaturesこのモデルに指定されたすべてのフィーチャを割り当てます。
AssignFeaturesByNameこのモデルに指定された名前のすべてのフィーチャを割り当てます。
CanRelateこのインスタンスの指定されたフィールドで与えられたモデルと関連づけできるか調べます。
関連づけできる場合はTrueを返します。
このメソッドでは、フィールドの型だけでなく、以下のフィールド制約についても評価します。
[評価する制約]
- パス制約
- 型制約
- 多重度上限

なお、自身、もしくは関連づけするモデルが削除済みモデル、一時プロキシの場合はFalseを返します。
また、以下のフィールドが指定された場合もFalseを返します。
- プロダクトラインのフィーチャ割り当てフィールド
- System.Coreタグが付与されたフィールド
- 所有フィールド
CanRelateAnyこのインスタンスを与えられたモデルと関連づけできるか調べます。
このインスタンスのいずれかの参照フィールドで関連づけることができる場合はTrueを返します。
なお、自身、もしくは関連づけするモデルが削除済みモデル、一時プロキシの場合はFalseを返します。
なお、所有のフィールドに関しては対象としません。
Count指定されたフィールドの値件数を取得します。

このメソッドは、IContextOption.PlModelAccessMode を評価しません。
CreateAsyncValidationContextこのモデルに対する非同期検証コンテキストを生成します。
Deleteこのインスタンスを削除します。
既に削除されたインスタンスに対してこのメソッドを呼び出した場合は何も行われません。

このインスタンスを削除することにより、以下のようなモデルに対する変更が発生します。
・このインスタンスと所有元(親要素)との所有関連が削除されます。
・このインスタンスを関連端とする全ての参照関連が削除されます。
・このインスタンスが所有するすべての子要素以下の要素、およびそれらの要素を関連端とする参照関連が削除されます。
FindChildrenByClassこのインスタンスの所有関係にあるインスタンスのうち指定されたクラスのインスタンスを検索します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

所有関係にあるインスタンスのうち、指定されたクラスのインスタンスのコレクションを返します。
なお、クラス名に指定したクラスが見つからない場合は空のコレクションを返します。
また、該当するインスタンスが存在しない場合も空のコレクションを返します。
FindChildrenByClassDisplayNameこのインスタンスの所有関係にあるインスタンスのうち指定された表示名をもつクラスのインスタンスを検索します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

所有関係にあるインスタンスのうち、指定された表示名をもつクラスのインスタンスのコレクションを返します。
該当するインスタンスが存在しない場合は空のコレクションを返します。
FindChildrenByClassTagこのインスタンスの所有関係にあるインスタンスのうち指定されたタグが付与されたクラスのインスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

所有関係にあるインスタンスのうち、指定されたタグが付与されたクラスのインスタンスのコレクションを返します。
該当するインスタンスが存在しない場合は空のコレクションを返します。
FindChildrenByTagこのインスタンスの所有関係にあるインスタンスのうち指定されたタグが付与されたインスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

所有関係にあるインスタンスのうち、指定されたタグが付与されたインスタンスのコレクションを返します。
該当するインスタンスが存在しない場合は空のコレクションを返します。
FindOwnerByClassこのインスタンスを保持する指定クラスの最初の所有元インスタンスを取得します。

このインスタンスを所有するインスタンスを親方向へ辿り、最初に見つかった指定クラスのインスタンスを返します。
最上位の親要素まで探索しても、該当するインスタンスが見つからなかった場合は null を返します。

なお、クラス名に指定したクラスが見つからない場合はnullを返します。
また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかったクラスのインスタンスを返します。
GetAllChildrenこのインスタンスから所有関係の深さ優先探索で探索できるすべての所有先インスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

このインスタンスを基点として所有関係の深さ優先探索で探索できるすべての所有先インスタンスのコレクションを返します。
該当するインスタンスが存在しない場合は空のコレクションを返します。
GetAllErrorsWithChildrenこのモデルが所有する子要素以下の要素も含めた全てのエラー情報を取得します。
エラー情報が存在しない場合は、空のコレクションを返します。

エラー情報にはサマリー情報を含みます。
GetAssignedFeaturesこのモデルに割り当てられているすべてのフィーチャを取得します。
GetChildrenこのインスタンスの直接の所有関係にある所有先インスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

このインスタンスと直接の所有関係にある所有先インスタンスのコレクションを返します。
該当するインスタンスが存在しない場合は空のコレクションを返します。
GetDerivedFromRelationsOfこのモデルが指定されたモデルから導出した要素であった場合、その全ての導出関連を取得します。
例えば、このモデルが{要素A}から導出した要素であった場合に、引数に{要素A}を指定することで、その導出関連を取得することができます。

これは、次のような処理に利用することができます。
・要求オブジェクトと仕様オブジェクトに導出関係がある場合に、仕様オブジェクト側から、要求オブジェクトに対する関連を取得する

このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetDerivedModels指定された関連クラスにより、このインスタンスから導出したインスタンスを取得します。
関連クラスが未指定(null)の場合は、全ての導出したインスタンスを取得します。

このメソッドは、IContextOption.PlModelAccessMode を評価します。

以下のケースに該当する場合は、このメソッドは空のコレクションを返します。
- 該当する導出関連で関連づけられた導出先インスタンスが存在しない
- 指定された関連クラスが見つからない
- 指定された関連クラスが導出関連でない
- 指定された導出関連クラスによる導出先への参照フィールドが見つからない
GetDerivedToRelationsOf指定されたモデルが、このモデルから導出した要素であった場合、その全ての導出関連を取得します。
例えば、このモデルから導出した{要素B}があった場合に、引数に{要素B}を指定することで、その導出関連を取得することができます。

これは、次のような処理に利用することができます。
・要求オブジェクトと仕様オブジェクトに導出関係がある場合に、要求オブジェクト側から、仕様オブジェクトに対する関連を取得する

このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetDeriveRelationsOf指定されたモデルとの全ての導出関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
なお、このメソッドでは導出方向を評価しません。
GetDerivingModels指定された関連クラスにより、このインスタンスの導出元インスタンスを取得します。
関連クラスが未指定(null)の場合は、全ての導出元インスタンスを取得します。

このメソッドは、IContextOption.PlModelAccessMode を評価します。

以下のケースに該当する場合は、このメソッドは空のコレクションを返します。
- 該当する導出関連で関連づけられた導出元インスタンスが存在しない
- 指定された関連クラスが見つからない
- 指定された関連クラスが導出関連でない
- 指定された導出関連クラスによる導出元への参照フィールドが見つからない
GetEditorこのインスタンスに対応する指定された名前のエディタを取得します。
このメソッドは、IContextOption.EditorAccessModeを評価します。

該当するエディタが見つからない場合は、null を返します。

EditorAccessModeの指定によっては、最新のモデルの変更が同期されません。
そのため、モデルを変更してから一度も表示していないエディタ等では、正しい情報が取得できない場合があることに注意してください。
GetEditorsこのインスタンスに対応するすべてのエディタを取得します。
このメソッドは、IContextOption.EditorAccessModeを評価します。

対応するエディタが存在しない場合は、空のコレクションを返します。

EditorAccessModeの指定によっては、最新のモデルの変更が同期されません。
そのため、モデルを変更してから一度も表示していないエディタ等では、正しい情報が取得できない場合があることに注意してください。
GetFieldこのインスタンスの指定されたフィールドの値を取得します。
指定されたフィールドの多重度が2以上の場合は、該当フィールドの先頭要素を取得します。
GetFieldAtこのインスタンスの指定されたフィールドの指定されたインデックス位置の値を取得します。
GetFieldStringこのインスタンスの指定されたフィールドの値を文字列形式で取得します。
指定されたフィールドがクラス型の場合、そのフィールドの先頭のインスタンス名を取得します。
なお、多重度が2以上の場合は、該当フィールドの先頭要素を取得します。
GetFieldStringAtこのインスタンスの指定されたフィールドの指定されたインデックス位置の値を文字列形式で取得します。
指定されたインデックス位置のフィールドがクラス型の場合、そのフィールドの先頭のインスタンス名を取得します。
GetFieldValues指定されたフィールドの値コレクションを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当するフィールド値が存在しない場合は、空のコレクションを返します。
なお、このメソッドで指定するフィールドのデータ型はクラス型でなければなりません。
GetFieldValuesByFieldTag指定されたタグが付与されたフィールドの値の列挙を取得します。
該当タグが付与されたフィールドが複数存在する場合は、そのすべてのフィールドの値の列挙を結合して返します。
このメソッドは、IContextOption.PlModelAccessMode を評価しません。プロダクトで無効となる要素も返される点に注意してください。

該当するフィールド値が存在しない場合は、空のコレクションを返します。

なお、このメソッドが対象とするタグを付与するフィールドのデータ型は任意です。したがって、このメソッドが返す列挙は object 型となります。
利用の際には、最適なデータ型に変換する必要があります。
GetOwnerFieldこのモデルの所有元モデルがこのモデルを保持するフィールドを取得します。
このモデルが関連の場合、または所有元モデルが存在しない場合は null を返します。
GetOwnerRelationshipこのモデルの所有元モデルとの関連を取得します。
このモデルが関連の場合、または所有元モデルが存在しない場合は null を返します。
GetOwnersこのインスタンスに対して所有関係で探索できる全ての所有元インスタンスを取得します。
このインスタンスを所有するインスタンスの親方向へのインスタンスのコレクションを返します。
親要素が存在しない場合は空のコレクションを返します。
GetProductApplyConditionこのモデルのプロダクト適用条件式を取得します。

プロダクト適用条件式は、"フィーチャ名変数"を真偽値型変数として扱う論理式です。
コンフィグレーションにおいて、フィーチャが選択状態にある場合、該当の"フィーチャ名変数"を真として評価します。
"フィーチャ名変数"は、"["および"]"でフィーチャ名、またはフィーチャユニーク名を囲む書式により記述します。
また、プロダクト適用条件式では、次の論理演算子、および計算順序を指定する"(",")"を使用できます。
- AND : 論理積
- OR : 論理和
- NOT : 否定

例:
・次のプロダクト適用条件式は、コンフィグレーションにおいて、フィーチャ名が"追従走行"、または"前方カメラ"が選択されている場合に真として評価される条件式です。
[追従走行] OR [前方カメラ]

・次のプロダクト適用条件式は、コンフィグレーションにおいて、フィーチャ名が"定速走行"が選択されておらず、かつ"ミリ波レーダー"が選択されている場合に真として評価される条件式です。
NOT [定速走行] AND [ミリ波レーダー]
GetReferenceFieldsOfこのインスタンスのクラスが持つ参照フィールドのうち、指定されたモデルを格納可能な型の参照フィールドを取得します。
このメソッドで取得できるフィールドは、Model.Metaclass.GetReferenceFieldOf(model.Metaclass) と同じ結果となります。
また、多重度、パス制約等のフィールドの制約については評価されません。
GetRefRelatedModels指定された関連クラスにより、このインスタンスと参照関係にあるインスタンスを取得します。
関連クラスが未指定(null)の場合は、全ての参照関係にあるインスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

以下のケースに該当する場合は、このメソッドは空のコレクションを返します。
- 該当する参照関連で関連づけられたインスタンスが存在しない
- 指定された関連クラスが見つからない
- 指定された関連クラスによる参照フィールドが見つからない

なお、指定された関連クラスが、自己参照関連の場合は、関連元、関連先のいずれの関係も評価します。
GetRelatableFieldsOfこのインスタンスと指定されたモデルを関連づけることができる参照フィールドを取得します。
このメソッドで取得できるフィールドは、フィールドの制約について評価します。
そのため、次の制約を満たさないフィールドは除外されます。
[評価する制約]
- パス制約
- 多重度上限
GetRelatingFieldsOfこのインスタンスのクラスが持つ全てのフィールドのうち、指定されたモデルをフィールド値として格納するものを取得します。
このメソッドで取得できるフィールドは、所有/参照に関係なく取得します。
GetRelation指定されたフィールドの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

指定されたフィールドが有効な関連を持たない場合は、null を返します。
なお、指定されたフィールドの多重度が2以上の場合は、該当フィールドの先頭要素への関連を取得します。
GetRelationAt指定されたフィールドの指定位置の関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。
GetRelations指定されたフィールドの関連コレクションを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByClassTagこのインスタンスのすべてのフィールドから指定されたタグが付与された関連クラスのインスタンスを取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByClassTagOfこのモデルのすべてのフィールドから指定されたタグが付与された関連クラスによって関連づけられた与えられたモデルとの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByFieldOf指定されたフィールドにおける指定されたモデルとの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByFieldTag指定されたタグが付与されたフィールドの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByFieldTagOf指定されたタグが付与されたフィールドから、与えられたモデルとの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsByTag指定されたフィールドにおける指定されたタグが付与された関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
GetRelationsOf指定されたモデルとの全ての関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。
なお、このメソッドは、所有関連/参照関連に関係なく、全ての関連を取得します。
GetRelationsOfWhereこのインスタンスの指定された条件に合致する与えられたモデルとの関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。

取得対象の関連は評価関数により、任意に決定することができます。
GetRelationsWhereこのインスタンスの指定された条件に合致する全ての関連を取得します。
このメソッドは、IContextOption.PlModelAccessMode を評価します。

該当する関連が存在しない場合は、空のコレクションを返します。

取得対象の関連は評価関数により、任意に決定することができます。
GetRepresentationsInEditor指定されたエディタ内でこのインスタンスに対応するすべての表現情報を取得します。
このメソッドは、IContextOption.EditorAccessModeを評価します。

該当する要素がない場合は、空のコレクションを返します。

EditorAccessModeの指定によっては、最新のモデルの変更が同期されません。
そのため、モデルを変更してから一度も表示していないエディタ等では、正しい情報が取得できない場合があることに注意してください。
GetRichTextField指定したリッチテキストフィールドのフォーマットの値を取得します。
指定したフォーマットに値がない場合はnullを返します。
GetRichTextFieldCustomData指定したリッチテキストフィールドのカスタムフォーマットの値を取得します。
指定したフォーマットが見つからない場合はnullを返します。
GetRichTextFieldFormats指定したリッチテキストフィールドの値が設定されているフォーマットの一覧を取得します。
一覧の順序は不定です。値が空文字のフォーマットも返します。
Isこのインスタンスが指定されたクラスのインスタンスであるか調べます。
指定されたクラスのインスタンスの場合はTrueを返します
IsAppliedItemこのモデルがカレントのプロダクトで有効か調べます。
IsAppliedItemToこのモデルが指定されたプロダクトで有効か調べます。
IsAppliedItemToByNameこのモデルが指定された名前のプロダクトで有効か調べます。
IsIn(IEnumerable<string>,bool)このインスタンスが指定されたいずれかのクラスのインスタンスであるか調べます。
指定されたいずれかのクラスのインスタンスの場合はTrueを返します。
IsIn(string,bool)このインスタンスが指定されたいずれかのクラスのインスタンスであるか調べます。
指定されたいずれかのクラスのインスタンスの場合はTrueを返します。
IsRelatedAtFieldToこのインスタンスが指定されたフィールドで与えられたモデルと参照関連を持つか調べます。
関連を持つ場合はTrueを返します。
IsRelatedToこのインスタンスが与えられたモデルと参照関連を持つか調べます。
関連を持つ場合はTrueを返します。
MoveToこのインスタンスを指定されたモデルの子要素となるように移動します。
移動先の親要素、およびフィールドが、現在の親要素、およびフィールドと同一の場合は、指定フィールドにおける要素の順序を変更します。
なお、移動先フィールドの多重度上限制約が違反しても例外はスローされません。
NotifyFieldChanged指定されたフィールドの値変更を通知します。
Relateこのインスタンスの指定されたフィールドの末尾で与えられたモデルを関連づけて、追加した関連インスタンスを返します。
RelateAllこのインスタンスの与えられたモデルと関連付けが可能な全ての参照フィールドで与えられたモデルを関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

このメソッドでは、次の制約を満たさないフィールドは関連付け対象から除外されます。
[評価する制約]
- パス制約
- 型制約
- 多重度上限
- 操作可否
RelateAllDerivedFromこのインスタンスの与えられたモデルを導出元として関連付けが可能な全てのフィールドで与えられたモデルを導出元として関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

このメソッドでは、次の制約を満たさないフィールドは関連付け対象から除外されます。
[評価する制約]
- パス制約
- 型制約
- 多重度上限
- 操作可否
RelateAllDerivedToこのインスタンスの与えられたモデルを導出先として関連付けが可能な全てのフィールドで与えられたモデルを導出先として関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

このメソッドでは、次の制約を満たさないフィールドは関連付け対象から除外されます。
[評価する制約]
- パス制約
- 型制約
- 多重度上限
- 操作可否
RelateAtこのインスタンスの指定されたフィールドで、追加位置を指定して与えられたモデルを関連づけて、追加した関連インスタンスを返します。
RelateByClassTagこのインスタンスの指定されたタグが付与された関連クラスによって関連づけ可能な参照フィールドで与えられたモデルを関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

このメソッドでは、次の制約を満たさないフィールドは関連付け対象から除外されます。
[評価する制約]
- パス制約
- 型制約
- 多重度上限
- 操作可否
RelateByFieldTagこのインスタンスの指定されたタグが付与された参照フィールドで与えられたモデルを関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

このメソッドでは、次の制約を満たさないフィールドは関連付け対象から除外されます。
[評価する制約]
- パス制約
- 型制約
- 多重度上限
- 操作可否
RelateWhereこのインスタンスの指定された条件に合致する全ての参照フィールドで与えられたモデルを関連づけて、追加したすべての関連インスタンスのコレクションを返します。
関連づけするモデルに削除されたモデル、一時プロキシが指定された場合、関連づけは行われません。
関連づけが行われなかった場合は、空のコレクションを返します。

関連づけする参照フィールドは、評価関数により、任意に決定することができます。
ただし、評価関数に合致しても、以下の条件に該当するフィールドの場合は、関連づけは行われず正常終了します。
・フィールドのパス制約を違反する場合
・フィールドの型が与えられたモデルと互換しない場合
・フィールドの多重度を超える場合
・条件に合致するフィールドが以下の操作不可フィールドであった場合
- プロダクトラインのフィーチャ割り当てフィールド
- System.Coreタグが付与されているフィールド
ReleaseAllAssignedFeaturesこのモデルに割り当てられたすべてのフィーチャとの割り当てを解除します。
この呼び出しでフィーチャとの割り当てを解除した場合はプロダクト適用条件式も削除されます。
ReleaseAssignedFeature指定されたフィーチャのこのモデルへの割り当てを解除します。
ReleaseAssignedFeatureByName指定された名前のフィーチャについて、このモデルへの割り当てを解除します。
ReleaseAssignedFeatures指定されたすべてのフィーチャのこのモデルへの割り当てを解除します。
ReleaseAssignedFeaturesByName指定された名前のすべてのフィーチャについて、このモデルへの割り当てを解除します。
RemoveErrorこのモデルに対して追加されているエラー情報を削除します。
削除対象のエラー情報に null または、このモデルに含まれないエラー情報を指定した場合は、何も行われず正常終了します。
RemoveFieldこのインスタンスの指定されたフィールドの値を削除します。
指定されたフィールドが所有フィールドの場合は、指定されたモデルを削除します。
指定されたフィールドが参照フィールドの場合は、参照関連のみを削除し、モデルは維持されます。

なお、削除対象として指定されたモデルが、指定フィールドに含まれない場合は、何も行われず正常終了します。
RemoveFieldAtこのインスタンスの指定された位置のフィールド値を削除します。
指定されたフィールドが所有フィールドの場合は、指定された位置のモデルを削除します。
指定されたフィールドが参照フィールドの場合は、指定された位置の参照関連のみを削除し、モデルは維持されます。
SetFieldこのインスタンスの指定されたフィールドに、指定された値を設定します。
指定されたフィールドに設定できない値が指定された場合は、例外がスローされます。
なお、指定されたフィールドの多重度が2以上の場合は、該当フィールドの先頭要素を設定します。
SetFieldAtこのインスタンスの指定されたフィールドの指定されたインデックス位置に、指定された値を設定します。
指定されたフィールドに設定できない値が指定された場合は、例外がスローされます。
なお、フィールドの多重度上限制約、パス制約に違反しても例外はスローされません。
SetInitFieldこのインスタンスの指定されたフィールドに、メタモデルで定義するフィールドの初期値を設定します。
メタモデルでフィールドの初期値を指定していない場合は、フィールド型のデフォルト値を設定します。

クラス型の所有フィールドに対してこのメソッドを呼び出した場合、フィールド値として設定されていたIModelは削除されます。
また、クラス型の参照フィールドに対してこのメソッドを呼び出した場合、フィールド値として設定されていたIModelとの関連が削除されます(フィールド値のIModelは削除されずに維持されます)。
SetProductApplyConditionこのモデルのプロダクト適用条件式を設定します。
なお、プロダクト適用条件式内において、このモデルに未割り当てのフィーチャ名が指定されている場合は、自動的にフィーチャが割り当てられます。
また、条件式で、このモデルに割り当て済みのフィーチャ名が使用されなかった場合は、自動的にフィーチャとの割り当てが解除されます。
条件式に空の文字列を指定した場合は、全てのフィーチャ割り当てが解除されます。
SetRichTextField(string,string,string,string)指定したリッチテキストフィールドのフォーマットに値を設定します。
また、指定したリッチテキストフィールドにテキスト値を設定します。
SetRichTextField(string,string,string)指定したリッチテキストフィールドのフォーマットに値を設定します。
SetRichTextField(string,string)指定したリッチテキストフィールドにテキスト値を設定します。
SetRichTextFieldCustomData指定したリッチテキストフィールドのカスタムフォーマットに値を設定します。

カスタムフォーマットの値はUI上には表示されません。APIでのみ取得・設定ができます。
Takeこのインスタンスの指定されたフィールドへ指定されたモデルを移動します。
移動対象のモデルの親要素がこのインスタンスとなります。
なお、移動先フィールドの多重度上限制約が違反しても例外はスローされません。
UnRelateこのインスタンスの指定されたフィールドで与えられたモデルとの参照関連づけを解除します。
該当フィールドにおいて、複数の関連づけがある場合は、そのすべての関連付けを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
UnRelateAllこのインスタンスの与えられたモデルとの全ての参照関連づけを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
また、以下の条件に該当するフィールドへの関連づけも解除されず正常終了します。
・プロダクトラインサポート向けフィールドでの関連付け
・System.Coreタグが付与されているフィールドでの関連付け
UnRelateAllDerivedFromこのインスタンスの与えられたモデルを導出元とする全ての関連づけを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
また、以下の条件に該当するフィールドへの関連づけも解除されず正常終了します。
・プロダクトラインサポート向けフィールドでの関連付け
・System.Coreタグが付与されているフィールドでの関連付け
UnRelateAllDerivedToこのインスタンスの与えられたモデルを導出先とする全ての関連づけを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
また、以下の条件に該当するフィールドへの関連づけも解除されず正常終了します。
・プロダクトラインサポート向けフィールドでの関連付け
・System.Coreタグが付与されているフィールドでの関連付け
UnRelateByClassTagこのインスタンスの指定されたタグが付与された関連クラスによって関連づけ可能な参照フィールドで与えられたモデルとの関連づけを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
また、以下の条件に該当するフィールドへの関連づけも解除されず正常終了します。
・プロダクトラインサポート向けフィールドでの関連付け
・System.Coreタグが付与されているフィールドでの関連付け
UnRelateByFieldTagこのインスタンスの指定されたタグが付与された参照フィールドで与えられたモデルとの関連づけを解除します。
与えられたモデルとの関連が存在しなかった場合は、何も行われず正常終了します。
また、以下の条件に該当するフィールドへの関連づけも解除されず正常終了します。
・プロダクトラインサポート向けフィールドでの関連付け
・System.Coreタグが付与されているフィールドでの関連付け
UnRelateWhereこのインスタンスの与えられたモデルとの指定された条件に合致する全ての参照関連づけを解除します。

関連づけを解除する対象は評価関数により、任意に決定することができます。
ただし、以下の条件に該当する関連づけは解除されずに正常終了します。
・条件に合致する関連がプロダクトラインサポート向けの関連であった場合
・条件に合致する関連端のフィールドにSystem.Coreタグが付与されている場合
Validate()このモデルを検証します。
このモデル、およびこのモデルが所有する子要素以下の全ての要素を再帰的に検証します。
このメソッドは、実行時に以前のエラー情報がすべてクリアされます。

[プロジェクト(IProject)に対してこのメソッドを実行した場合]
・プロジェクトに未ロードのモデルファイルがあればその旨のエラー情報を設計モデルの基点となるモデル(モデルナビゲータのルートに表示するモデル)に追加します。これは、未ロードのモデルファイルがあるため、プロジェクトの全てのモデルに対し検証ができていないことを呼び出し元に知らせるためです。
・プロジェクトに未ロードのモデルファイルがあることによりプロジェクトの所有関係で到達できないモデル(親が未ロードのモデル)も含みます。

[検証内容]
・アプリケーションが既定する標準の検証
・エクステンションの検証イベントにより拡張した検証
Validate(ValidationOptions)このモデルを検証します。
オプションの指定により、このモデルのみ検証、または、このモデル、およびこのモデルが所有する子要素以下の全ての要素を再帰的に検証します。
このメソッドは、実行時に以前のエラー情報がすべてクリアされます。

[プロジェクト(IProject)に対してこのメソッドを実行した場合]
・プロジェクトに未ロードのモデルファイルがあればその旨のエラー情報を設計モデルの基点となるモデル(モデルナビゲータのルートに表示するモデル)に追加します。これは、未ロードのモデルファイルがあるため、プロジェクトの全てのモデルに対し検証ができていないことを呼び出し元に知らせるためです。
・プロジェクトに未ロードのモデルファイルがあることによりプロジェクトの所有関係で到達できないモデル(親が未ロードのモデル)も含みます。

[検証内容]
・オプションで有効としたアプリケーションが既定する標準の検証
・オプションでモデル検証時イベントの発行が指定されている場合は、エクステンションの検証イベントにより拡張した検証

拡張メソッド

名前説明
IsDesignModelこのモデルが設計モデルルート (モデルナビゲータのルートモデル) であるか調べます。
IsProductLineElementこのモデルがプロダクトライン要素であるか調べます。
IsReadonlyこのモデルが読み取り専用であるか調べます。
このモデルに対応するモデルユニットが取得できない場合はFalseを返します。

関連項目

名前説明
モデルを編集するAPIを通してNextDesignの各種モデル情報を編集します。