| |
June 2002
CORBA Components: Introduction
8-23
8
Figure 8-20
Primary Key Constraints
Va lu e D e f
(fro m B a seID L)
P rim a ryK e yD e f
C o m p o n e n tD e f
H o m e D e f
**C o n s tra in ts in E n g lis h **
Th e va lu e typ e o f a p rim a ry ke y
[2 5 ] m u s t n o t h a ve p riva te s ta te m e m b e rs
[2 6 ] m u s t n o t h a ve m e m b e rs th a t a re in te rfa ce s
[2 7 ] m u s t h a ve a t le a s t o n e s ta te m e m b e r
[2 8 ] C o n tra in ts [2 5 ], [2 6 ], a n d [2 7 ] a p p ly re cu rs ive ly to va lu e typ e m e m b e rs th a t a re va lu e typ e s
**C o n s tra in ts in O C L **
[2 5 , 2 6 , 2 7 , 2 8 ] is Acce p ta b le K e yTyp e (typ e )
**Ad d itio n a l OC L Op e ra tio n **
is Acce p ta b le K e yTyp e (va lu e Typ e : Va lu e D e f) : b o o le a n
{
va lu e Typ e .co n te n ts .fo rAll (c | c.o clIs Typ e O f(Va lu e fMe m b e rD e f) im p lie s c.O clAs Typ e (Va lu e Me m b e rD e f).is P u b licMe m b e r) a n d
va lu e Typ e .co n te n ts .fo rAll (n o t o clIs K in d Of (In te rfa ce D e f)) a n d
va lu e Typ e .co n te n ts .e xis ts (o clIs Typ e Of(Va lu e Me m b e rD e f)) a n d
va lu e Typ e .co n te n ts .fo rAll (c | c.o clIs K in d Of (Va lu e D e f) im p lie s is Acce p ta b le K e yTyp e (c))
}
+typ e
1
0 ..*
+m a n a g e s
+h o m e
1
+ke y
0 ..1
<<im p licit>>
+h o m e
1
0 ..*
|  |
|
| |
|
|