Table of Contents

Interface IExtend

Namespace
NMF.Interop.Uml
Assembly
NMF.UMLInterop.dll

The public interface for Extend

[DefaultImplementationType(typeof(Extend))]
[XmlDefaultImplementationType(typeof(Extend))]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//Extend")]
public interface IExtend : IDirectedRelationship, IRelationship, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inherited Members

Properties

Condition

References the condition that must hold when the first ExtensionPoint is reached for the extension to take place. If no constraint is associated with the Extend relationship, the extension is unconditional. <p>From package UML::UseCases.</p>

[Browsable(false)]
[XmlElementName("condition")]
[XmlAttribute(false)]
[Containment]
IConstraint Condition { get; set; }

Property Value

IConstraint

ExtendedCase

The UseCase that is being extended. <p>From package UML::UseCases.</p>

[XmlElementName("extendedCase")]
[XmlAttribute(true)]
IUseCase ExtendedCase { get; set; }

Property Value

IUseCase

Extension

The UseCase that represents the extension and owns the Extend relationship. <p>From package UML::UseCases.</p>

[Browsable(false)]
[XmlElementName("extension")]
[XmlAttribute(true)]
[XmlOpposite("extend")]
IUseCase Extension { get; set; }

Property Value

IUseCase

ExtensionLocation

An ordered list of ExtensionPoints belonging to the extended UseCase, specifying where the respective behavioral fragments of the extending UseCase are to be inserted. The first fragment in the extending UseCase is associated with the first extension point in the list, the second fragment with the second point, and so on. Note that, in most practical cases, the extending UseCase has just a single behavior fragment, so that the list of ExtensionPoints is trivial. <p>From package UML::UseCases.</p>

[LowerBound(1)]
[XmlElementName("extensionLocation")]
[XmlAttribute(true)]
IOrderedSetExpression<IExtensionPoint> ExtensionLocation { get; }

Property Value

IOrderedSetExpression<IExtensionPoint>

Methods

Extension_points(object, object)

The ExtensionPoints referenced by the Extend relationship must belong to the UseCase that is being extended. extensionLocation->forAll (xp | extendedCase.extensionPoint->includes(xp))

bool Extension_points(object diagnostics, object context)

Parameters

diagnostics object

The chain of diagnostics to which problems are to be appended.

context object

The cache of context-specific information.

Returns

bool