{ * File: W26c.sml.txt * Author: Michael Schrefl, Bernd Neumayr, Manfred Jeusfeld * Created: 1-Nov-2013/M.Jeusfeld (15-Nov-2013) * ------------------------------------------------------ * abstract example on how to merge subject and value deep instantiation * merges E26a and E26b; a third linkDR is then needed to make the whole consistent * wrt axiom i4 BUT * ---> d7a,d7b are violated due to attribute crossover } A in ALABEL end {* linkDRs crossing levels symmetrically *} x1 in OBJECT with {* a class for subjects *} linkDR m1: y2 end {* a subject-side DI link *} x1!m1 with label l: A sourcelevel s: 1 targetlevel t: 0 end x2 in OBJECT with {* an instance subject *} IN c: x1 linkDR m1: y1 end {* a value-side DI link *} x2!m1 with label l: A sourcelevel s: 0 targetlevel t: 1 end y1 in OBJECT end {* a class for values *} y2 in OBJECT with {* an instance value *} IN c: y1 end {* another linkDR is need to make this model consistent *} x1 with linkDR m2: y1 end x1!m2 with label l: A sourcelevel s: 1 {* = max(sourcelevel(x1!m1),sourcelevel(x2!m1)) *} targetlevel t: 1 {* = max(targetlevel(x1!m1),targetlevel(x2!m1)) *} end