関連のフィールドにアクセスする
関連オブジェクト(IRelationship)のコレクションはIModelオブジェクトのGetRelationsメソッドで取得できます。IRelationshipはIModelを継承しており、フィールドにアクセスできます。
public void GetRelationFields(ICommandContext c, ICommandParams p)
{
    IModel model = c.App.Workspace.CurrentModel;
    // 関連
    foreach ( IRelationship transition in model.GetRelations("Transitions") )
    {
        // 関連のフィールドを取得します
        var trigger = transition.GetFieldString("Trigger");
        // アウトプットに出力します
        c.App.Output.WriteLine("sample", $"Trigger: {trigger}");
    }
}
関連先のモデル(IModel)は、IRelationshipオブジェクトのSourceプロパティやTargetプロパティでアクセスできます。
public void GetRelationEnds(ICommandContext c, ICommandParams p)
{
    IModel model = c.App.Workspace.CurrentModel;
    // 関連
    foreach ( IRelationship transition in model.GetRelations("Transitions") )
    {
        // 関連元、関連先のモデル
        IModel source  = transition.Source;
        IModel target = transition.Target;
        // アウトプットに出力します
        c.App.Output.WriteLine("sample", $"Source: {source.Name}");
        c.App.Output.WriteLine("sample", $"Target: {target.Name}");
    }
}
関連元と関連先のメタモデル上のフィールド定義情報(IField)はIRelationshipオブジェクトのSourceFieldプロパティ、TargetFieldプロパティでアクセスできます。
public void GetRelationEndFields(ICommandContext c, ICommandParams p)
{
    IModel model = c.App.Workspace.CurrentModel;
    // 関連
    foreach ( IRelationship transition in model.GetRelations("Transitions") )
    {
        // 関連元、関連先のフィールド
        IField sourceField = transition.SourceField;
        IField targetField = transition.TargetField;
        // アウトプットに出力します
        c.App.Output.WriteLine("sample", $"SourceField: {sourceField.Name}");
        c.App.Output.WriteLine("sample", $"TargetField: {targetField.Name}");
    }
    //...
}