## Structural Essence: Multiplicity and Generalization

This is a page of the online appendix of our paper on Structural Essence.

We have two options for dealing with multiplicity on an association involving a superclass.

1. Split: Create separate multiplicity-nodes (*) for each subclass
2. Share: Create one shared multiplicity-node for the superclass that is shared with all subclasses

This decision affects the two directions of the association differently. Assume A is a superclass of B and C. Assume that there is an association between A and an otherwise unrelated class X. The following figure shows the 9 cases:

 Option Case Association 1 split 2 share (chosen) 1 A 1->* X B->X[X[->XC->X['X['->Xessence=2 B->X[C->X[X[->Xessence=1 2 A *->1 X B[->BB->XC[->CC->Xessence=2 A[->BB->XA[->CC->Xessence=1 3 A *->* X B[->BB->X[X[->XC[->CC->X['X['->Xessence=4 A[->BB->X[A[->CC->X[X[->Xessence=2 4 A 1<-* X X[->XX->BX->Cessence=1 5 A *<-1 X X->B[B[->BX->C[C[->Cessence=2 X->A[A[->BA[->Cessence=1 6 A *<-* X X[->XX->B[B[->BX->C[C[->Cessence=3 X[->XX->A[A[->BA[->Cessence=2 7 A 1<->* X X->BX->CB->X[X[->XC->X['X['->Xessence=2+3=5 X->BX->CB->X[C->X[X[->Xessence=1+3=4 8 A *<->1 X B->XC->XX->B[B[->BX->C[C[->Cessence=2+3=5 B->XC->XX->A[A[->BA[->Cessence=1+3=4 9 A *<->* X B->X[X[->XC->X['X['->XX->B[B[->BX->C[C[->Cessence=4+3=7 B->X[C->X[X[->XX->A[A[->BA[->Cessence=2+3=5

Our chosen option leads to the following distilled model: