| |
38 Angenommene Spezifikation UML Ocl 2,0 Kontext VoidType inv: Classifier.allInstances()->forAll (c|self.conformsTo (c)) 8,2,2 Wohlgeformtheitrichtlinien für das Artpaket BagType [ 1 ] Der Name einer Beutelart ist "der Beutel", der in Klammern vom Namen der Elementart gefolgt wird. Kontext BagType inv: self.name = ' Bag(' + self.elementType.name + ') ' CollectionType [ 1 ] Der Name einer Ansammlungsart ist "die Ansammlung", die in Klammern vom Namen der Elementart gefolgt wird. Kontext CollectionType inv: self.name = ' Collection(' + self.elementType.name + ') ' Klassifikator [ 1 ] Für jeden Klassifikator höchstens bestehen eins von jeder der unterschiedlichen Ansammlungsarten. Kontextklassifikator inv: collectionTypes->select(oclIsTypeOf(CollectionType))->size() < = 1 inv: collectionTypes->select(oclIsTypeOf(BagType))->size() < = 1 inv: collectionTypes->select(oclIsTypeOf(SequenceType))->size() < = 1 inv: collectionTypes->select(oclIsTypeOf(SetType))->size() < = 1 OclMessageType [ 1 ] OclMessageType hat entweder eine Verbindung mit einem Signal oder mit einem Betrieb, aber nicht beide. Kontext OclMessageType inv: referredOperation->size() + referredSignal->size() = 1 [ 2 ] Die Parameter des referredOperation werden Attribute des Falls von OclMessageType. Kontext OclMessageType inv: referredOperation->size() = 1 deutet an self.feature = referredOperation.parameter.asAttribute() [ 3 ] Die Attribute des referredSignal werden Attribute des Falls von OclMessageType. Kontext OclMessageType inv: referredSignal->size() = 1 deutet an self.feature = referredSignal.feature OrderedSetType [ 1 ] Der Name einer Satzart ist "OrderedSet", das in Klammern vom Namen der Elementart gefolgt wird. Kontext OrderedSetType inv: self.name = ' OrderedSet(' + self.elementType.name + ') ' SequenceType [ 1 ] Der Name einer Reihenfolgenart ist "die Reihenfolge", die in Klammern vom Namen der Elementart gefolgt wird. Kontext SequenceType inv: self.name = ' Sequence(' + self.elementType.name + ') ' |  |
|
| |
|
|