Terminology

The following terms make it easier to describe language features.

RHS and LHS

These refer to the right and left hand sides of an assignment expression.

MX domain

This is the model execution (MX) domain. That’s the domain that applies all of the xUML execution rules on your models. In the past this was referred to as thee “software architecture”. But that term is used to mean so many different things in various context that it has been abandoned.

Signal / Event

The greater UML standard defines both signals and events. A signal is something you send and an event is something that happens. One kind of thing that can happen is the arrival of a signal delivered to some instance. A time event is another kind of event, for example, in the greater UML.

In xUML, the ONLY kind of thing that can happen is an event. And all events are triggered by the delivery of a signal. Time isn’t special, it is just the arrival of a delayed signal.

Consequently, in xUML, the terms signal and event are often used interchangeably.

Local class

When describing a method or state activity, this refers to the class upon which the method or state is defined.

Instance

An instance of a class. Also an object. The terms may be used interchangeably.

Local instance

This is the instance executing the example activity. It is the starting point for any relationship navigation.

Remote instance

An instance that belongs to some class other than the local class.

Identifier

A set of one or more attributes of some class such that a set of values suppled for each of these attributes will match either zero or one object in the associated class population. An identifier is irreducible so the terms “identifier” and “irreducible identifier” are synonymous. This means that for the set of attributes that comprise an identifier, there is no proper subset that conforms to the identity constraint. It is taken from the relational theory definition of a key.

Reference

A set of one or more referential attributes that refer to the identifier of a class on the opposite side of some relationship.

Referential attribute

An attribute that refers to some identifier attribute of a class on the opposite side of an associated relationship is referential. For any given instance on the referring side, the value of the referential attribute must match an existing value for the referenced identifier attribute for some instance on the other side of the relationship. Note that this definition does not match the one in use for BridgePoint / xtUML. The xUML definition conforms to that of a foreign key in relational theory. This distinction has significant modeling consequences.

Super identifier

A super identifier is a reducible identifier. So it is an identifier with one or more additional attributes taken from the same class. In rare circumstances you may want to build a reference to a super identifier instead of to an identifier to express a certain kind of constraint. The term is analogous to the relational theory definition of a superkey.