org.eclipse.uml2
Interface Association

All Superinterfaces:
Classifier, Element, EModelElement, EObject, NamedElement, Namespace, Notifier, PackageableElement, ParameterableElement, RedefinableElement, Relationship, TemplateableElement, Type
All Known Subinterfaces:
AssociationClass, CommunicationPath, Extension

public interface Association
extends Classifier, Relationship

A representation of the model object 'Association'. An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of the association may have the same type. When a property is owned by an association it represents a non-navigable end of the association. In this case the property does not appear in the namespace of any of the associated classifiers. When a property at an end of an association is owned by one of the associated classifiers it represents a navigable end of the association. In this case the property is also an attribute of the associated classifier. Only binary associations may have navigable ends.

The following features are supported:

See Also:
UML2Package.getAssociation()

Field Summary
static String copyright
           
 
Fields inherited from interface org.eclipse.uml2.NamedElement
SEPARATOR
 
Method Summary
 Property createOwnedEnd(EClass eClass)
          Creates a Property and appends it to the 'Owned End' containment reference list
 Type getEndType(String unqualifiedName)
          Retrieves the Type with the specified name from the 'End Type' reference list
 EList getEndTypes()
          Returns the value of the 'End Type' reference list.
 EList getFeatures()
           
 Property getMemberEnd(String unqualifiedName)
          Retrieves the Property with the specified name from the 'Member End' reference list
 EList getMemberEnds()
          Returns the value of the 'Member End' reference list.
 EList getMembers()
           
 Property getOwnedEnd(String unqualifiedName)
          Retrieves the Property with the specified name from the 'Owned End' containment reference list
 EList getOwnedEnds()
          Returns the value of the 'Owned End' containment reference list.
 EList getOwnedMembers()
           
 EList getRelatedElements()
           
 boolean isDerived()
          Returns the value of the 'Is Derived' attribute.
 void setIsDerived(boolean value)
          Sets the value of the 'Is Derived' attribute
 
Methods inherited from interface org.eclipse.uml2.Classifier
allFeatures, allParents, conformsTo, createGeneralization, createGeneralization, createOccurrence, createOwnedUseCase, createSubstitution, general, getAttribute, getAttributes, getClientDependencies, getFeature, getGeneral, getGeneralizations, getGenerals, getInheritedMember, getInheritedMembers, getOccurrence, getOccurrences, getOwnedElements, getOwnedUseCase, getOwnedUseCases, getPowertypeExtent, getPowertypeExtents, getRedefinedClassifier, getRedefinedClassifiers, getRedefinedElements, getRepresentation, getSubstitution, getSubstitutions, getUseCase, getUseCases, getUsedInterfaces, hasVisibilityOf, inherit, inheritableMembers, inheritedMember, isAbstract, maySpecializeType, parents, setIsAbstract, setRepresentation, validateGeneralEqualsParents, validateInheritedMember, validateNoCyclesInGeneralization, validateSpecializeType
 
Methods inherited from interface org.eclipse.uml2.Namespace
createElementImport, createOwnedRule, createPackageImport, excludeCollisions, getElementImports, getImportedMember, getImportedMembers, getImportedPackages, getMember, getNamesOfMember, getOwnedRule, getOwnedRules, getPackageImports, importedMember, importElement, importMembers, importPackage, membersAreDistinguishable, validateImportedMemberDerived, validateMembersAreDistinguishable
 
Methods inherited from interface org.eclipse.uml2.NamedElement
allNamespaces, createNameExpression, getClientDependency, getName, getNameExpression, getNamespace, getOwner, getQualifiedName, getVisibility, isDistinguishableFrom, qualifiedName, separator, setName, setNameExpression, setVisibility, validateNoName, validateQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.TemplateableElement
createOwnedTemplateSignature, createTemplateBinding, getOwnedTemplateSignature, getTemplateBindings, parameterableElements, setOwnedTemplateSignature
 
Methods inherited from interface org.eclipse.uml2.Element
addKeyword, allOwnedElements, apply, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedVersion, getKeywords, getModel, getNearestPackage, getOwnedComments, getValue, hasKeyword, isApplied, isRequired, mustBeOwned, removeKeyword, setValue, unapply, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.Type
conformsTo, createAssociation, getNamespace, getPackage
 
Methods inherited from interface org.eclipse.uml2.PackageableElement
getPackageableElement_visibility, getVisibility, setPackageableElement_visibility, setVisibility
 
Methods inherited from interface org.eclipse.uml2.ParameterableElement
getOwner, getOwningParameter, getTemplateParameter, setOwningParameter, setTemplateParameter
 
Methods inherited from interface org.eclipse.uml2.RedefinableElement
getRedefinitionContext, getRedefinitionContexts, isConsistentWith, isLeaf, isRedefinitionContextValid, setIsLeaf, validateRedefinitionConsistent, validateRedefinitionContextValid
 

Field Detail

copyright

public static final String copyright

See Also:
Constant Field Values
Method Detail

isDerived

public boolean isDerived()
Returns the value of the 'Is Derived' attribute. The default value is "false".

If the meaning of the 'Is Derived' attribute isn't clear, there really should be more of a description here...

Specifies whether the association is derived from other model elements such as other associations or constraints. The default value is false.

Returns:
the value of the 'Is Derived' attribute.
See Also:
setIsDerived(boolean), UML2Package.getAssociation_IsDerived()

setIsDerived

public void setIsDerived(boolean value)
Sets the value of the 'Is Derived' attribute.

Parameters:
value - the new value of the 'Is Derived' attribute.
See Also:
isDerived()

getOwnedEnds

public EList getOwnedEnds()
Returns the value of the 'Owned End' containment reference list. The list contents are of type Property. It is bidirectional and its opposite is 'Owning Association'.

If the meaning of the 'Owned End' containment reference list isn't clear, there really should be more of a description here...

The non-navigable ends that are owned by the association itself. This is an ordered association. Subsets Association::memberEnd, Classifier::feature, and Namespace::owned- Member.

Returns:
the value of the 'Owned End' containment reference list.
See Also:
UML2Package.getAssociation_OwnedEnd(), Property.getOwningAssociation()

getOwnedEnd

public Property getOwnedEnd(String unqualifiedName)
Retrieves the Property with the specified name from the 'Owned End' containment reference list.

Parameters:
unqualifiedName - The unqualified name of the Property to retrieve.
Returns:
The Property with the specified name, or null.
See Also:
getOwnedEnds()

createOwnedEnd

public Property createOwnedEnd(EClass eClass)
Creates a Property and appends it to the 'Owned End' containment reference list.

Parameters:
eClass - The Ecore class of the Property to create.
Returns:
The new Property.
See Also:
getOwnedEnds()

getEndTypes

public EList getEndTypes()
Returns the value of the 'End Type' reference list. The list contents are of type Type.

If the meaning of the 'End Type' reference list isn't clear, there really should be more of a description here...

References the classifiers that are used as types of the ends of the association.

Returns:
the value of the 'End Type' reference list.
See Also:
UML2Package.getAssociation_EndType()

getEndType

public Type getEndType(String unqualifiedName)
Retrieves the Type with the specified name from the 'End Type' reference list.

Parameters:
unqualifiedName - The unqualified name of the Type to retrieve.
Returns:
The Type with the specified name, or null.
See Also:
getEndTypes()

getMemberEnds

public EList getMemberEnds()
Returns the value of the 'Member End' reference list. The list contents are of type Property. It is bidirectional and its opposite is 'Association'.

If the meaning of the 'Member End' reference list isn't clear, there really should be more of a description here...

Each end represents participation of instances of the classifier connected to the end in links of the association. This is an ordered association. Subsets Namespace::member.

Returns:
the value of the 'Member End' reference list.
See Also:
UML2Package.getAssociation_MemberEnd(), Property.getAssociation()

getMemberEnd

public Property getMemberEnd(String unqualifiedName)
Retrieves the Property with the specified name from the 'Member End' reference list.

Parameters:
unqualifiedName - The unqualified name of the Property to retrieve.
Returns:
The Property with the specified name, or null.
See Also:
getMemberEnds()

getFeatures

public EList getFeatures()

Specified by:
getFeatures in interface Classifier
Returns:
the value of the 'Feature' reference list.
See Also:
UML2Package.getClassifier_Feature(), Feature.getFeaturingClassifiers()

getOwnedMembers

public EList getOwnedMembers()

Specified by:
getOwnedMembers in interface Classifier

getRelatedElements

public EList getRelatedElements()

Specified by:
getRelatedElements in interface Relationship
Returns:
the value of the 'Related Element' reference list.
See Also:
UML2Package.getRelationship_RelatedElement()

getMembers

public EList getMembers()

Specified by:
getMembers in interface Classifier

Copyright 2003, 2004 IBM Corporation and others.
All Rights Reserved.