Skip to content
Leon Starr edited this page Feb 22, 2022 · 5 revisions

R105 / Generalization

Asymmetric Perspective is a T Perspective or P Perspective


Every Binary Association defines a Perspective on each of its two sides.

While the Perspective names distinguish each side, we need a way to talk about the two sides in the abstract and have chosen the T and P names.

These two names are arbitrarily assigned to the Perspectives of each Binary Association.

The combination of a specialization and two 1:1 associations is modeling idiom that allows us to formalize a 1:2 multiplicity. Thus a Binary Association requires exactly two Perspectives while a Perspective is defined on exactly one Binary Association. This could be accomplished without highlighting the T and P Perspectives with their own subclasses, but the specialization serves to make our policy a bit more explicit.

Modeler's note [LS]: I've gone back and forth on this one, but I believe that the minor optimization of collapsing R105 doesn't buy us much. As the model stands, it's pretty clear that all Perspectives are T, P or S and that T and P are paired on a Binary Association while S stands alone on a Unary Association. All things being equal, clarity of purpose wins the day.

Formalization

<subclass>.(Rnum, Domain, Side) -> Asymmetric Perspective.(Rnum, Domain, Side)
Clone this wiki locally