Qualifiers are ordered sets of properties of an Association end point, a Part, a Port, or an Attribute, that limit the nature of the relationship between two classifiers or objects. You define a qualifier on the Qualifiers dialog, which you display by clicking on the [ ... ] button at the end of the Qualifiers field on the Association, Part, Port or Attribute Properties dialog.

Some examples of qualified Associations are shown in the following diagram:



  • When typing multiple Qualifiers into the Qualifier(s) field on a Properties dialog, separate them with a semi-colon; each Qualifier then displays on a separate line. For example, in the diagram the Qualifier 'rank:Rank;file:File' has been rendered in two lines, with a line break at the ; character.
  • You can enable or disable Qualifier rectangles in the Diagram page of the Options dialog (select the Tools | Options | Diagram menu option). If disabled, the old style text Qualifiers are used. It is not recommended that you disable Qualifiers as they are an integral part of the UML.
  • You can enable or disable a mild shading on the Qualifier rectangles in the Links page of the Options dialog.


OMG UML Specification

The OMG UML specification (UML Superstructure Specification, v2.1.1, p. 129) states:

A qualifier declares a partition of the set of associated instances with respect to an instance at the qualified end (the qualified instance is at the end to which the qualifier is attached). A qualifier instance comprises one value for each qualifier attribute. Given a qualified object and a qualifier instance, the number of objects at the other end of the association is constrained by the declared multiplicity. In the common case in which the multiplicity is 0..1, the qualifier value is unique with respect to the qualified object, and designates at most one associated object. In the general case of multiplicity 0..*, the set of associated instances is partitioned into subsets, each selected by a given qualifier instance. In the case of multiplicity 1 or 0..1, the qualifier has both semantic and implementation consequences. In the case of multiplicity 0..*, it has no real semantic consequences but suggests an implementation that facilitates easy access of sets of associated instances linked by a given qualifier value.