blob: f7e7a1fc66360355bfb937eeb314b24728a96249 [file] [log] [blame]
(object Petal
version 50
_written "Rose 8.3.0407.2800"
charSet 0)
(object Class_Category "behavioral"
is_unit TRUE
is_loaded TRUE
quid "446B1EEC006B"
documentation "Processes, workflows and events. This is where BPEL and BPMN should be positioned and mapped to our infrastructures. But also the Process Agent Framework and BTM has to end up here."
stereotype "metamodel"
exportControl "Public"
logical_models (list unit_reference_list
(object Class_Category "bpdm"
quid "4472F8220220"
exportControl "Public"
logical_models (list unit_reference_list
(object Class "Dummy"
quid "4581611800FD"))
logical_presentations (list unit_reference_list))
(object Class_Category "businesstasks"
quid "44D74C9A02B1"
documentation "If it turns out to be beneficial, elements in this package cover the creation and management of BTM-related objects, such as creating a business task, assigning it to specific users or roles, etc."
exportControl "Public"
logical_models (list unit_reference_list
(object Class "TaskAgent"
quid "44ECBFAF0253"))
logical_presentations (list unit_reference_list
(object ClassDiagram "Task Agents"
quid "44ECBFB50108"
title "Task Agents"
zoom 100
max_height 28350
max_width 21600
origin_x 0
origin_y 0
items (list diagram_item_list
(object ClassView "Class" "Logical View::behavioral::businesstasks::TaskAgent" @1
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (869, 731)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @1
location (753, 681)
fill_color 13434879
nlines 1
max_width 232
justify 0
label "TaskAgent")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "44ECBFAF0253"
width 250
height 124
annotation 8
autoResize TRUE)))))
(object Class_Category "actions"
quid "44D74DA301E0"
documentation
|Some action language that talks in the concepts of BOs, BONodes, invoking services, sending messages, explicitly declaring that an event occurred, triggering actions, evaluating rules, ...
|
|The language can be used, e.g., to specify the behavior of an action (part of a BO or BONode) or a service implementation.
exportControl "Public"
logical_models (list unit_reference_list
(object Class "Assignment"
quid "45229F090021"
documentation "The argument tells the value to be assigned to the variable."
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4925735300FA"
supplier "Logical View::behavioral::actions::StatementWithArgument"
quidu "492573460213"))
nestedClasses (list nestedClasses
(object Class "AssignmentCompatibility"
quid "4522A8BA0390"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "4522A8CA00CC"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Assignment
|inv:
| self.argument.getType().conformsTo(self.assignTo.getType())
)
opExportControl "Public"
uid 0)))
(object Class "MustHaveArgument"
quid "496DD2570213"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "496DD25F00AB"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Assignment
|inv:
| self.argument->notEmpty()
)
opExportControl "Public"
uid 0)))))
(object Class "Statement"
quid "4545FC1D0190"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4B85518E036B"
supplier "Logical View::data::classes::InScope"
quidu "4B85514B0119"))
operations (list Operations
(object Operation "getOutermostBlock"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Statement::getOutermostBlock():Block
|body:
| self.block.getOutermostBlock()
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "4925638400FA"
result "Block"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "454606CB020A")
(object Operation "isSideEffectFree"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Statement::isSideEffectFree():Boolean
|body:
| not self.oclIsKindOf(AddLink) and
| not self.oclIsKindOf(RemoveLink) and
| not self.oclIsKindOf(Assignment) and
| (self.oclIsKindOf(IfElse) implies self.oclAsType(IfElse).condition.isSideEffectFree()) and
| (self.oclIsKindOf(WhileLoop) implies self.oclAsType(WhileLoop).condition.isSideEffectFree()) and
| (self.oclIsKindOf(ExpressionStatement) implies self.oclAsType(ExpressionStatement).expression.isSideEffectFree()) and
| (self.oclIsKindOf(StatementWithArgument) implies (self.oclAsType(StatementWithArgument).argument->notEmpty() implies self.oclAsType(StatementWithArgument).argument.isSideEffectFree())) and
| (self.oclIsKindOf(StatementWithNestedBlocks) implies self.oclAsType(StatementWithNestedBlocks).nestedBlocks->forAll(b|b.isSideEffectFree()))
)))
quid "492566D302AF"
documentation
|A statement is said to be side effect free if it does not modify any variable declared outside the scope of the block owning the statement and if it does not modify any object's state and if it does not modify any association's link set.
|
|TODO We need a more context-sensitive definition of sideEffectFree. While assigning to a local variable disallows statement reordering within the block, the block can still overall be side effect free such that its invocation may be reordered. There seem to be at least two notions of side effect freeness: one within the block in which it occurs (and variable assignment in this context counts as a side effect because it will disallow reordering), and another one regarding side effects observable outside the block; those are all modifications that can "escape" from the block, including changing the state of an object that is reachable outside the block (even if created in the block but then returned from the block), or changing the contents of a link container visible outside the block.
result "Boolean"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "39A2BDA60392")
(object Operation "isSideEffectFreeForBlock"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Statement::isSideEffectFreeForBlock(block:Block):Boolean
|body:
| not self.oclIsKindOf(AddLink) and
| not self.oclIsKindOf(RemoveLink) and
| (self.oclIsKindOf(Assignment) implies self.oclAsType(Assignment).assignTo.owner <> block) and
| (self.oclIsKindOf(IfElse) implies self.oclAsType(IfElse).condition.isSideEffectFree()) and
| (self.oclIsKindOf(WhileLoop) implies self.oclAsType(WhileLoop).condition.isSideEffectFree()) and
| (self.oclIsKindOf(ExpressionStatement) implies self.oclAsType(ExpressionStatement).expression.isSideEffectFree()) and
| (self.oclIsKindOf(StatementWithArgument) implies (self.oclAsType(StatementWithArgument).argument->notEmpty() implies self.oclAsType(StatementWithArgument).argument.isSideEffectFree())) and
| (self.oclIsKindOf(StatementWithNestedBlocks) implies self.oclAsType(StatementWithNestedBlocks).nestedBlocks->forAll(b|b.isSideEffectFree()))
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "4A27EFCF0128"
documentation "Assignment statements to block-local variables do not imply a side effect w.r.t the block"
parameters (list Parameters
(object Parameter "block"
quid "4A27F00402BF"
type "Block"
quidu "454606CB020A"))
result "Boolean"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "39A2BDA60392")
(object Operation "getNamedValuesInScope"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "rose2mof.return.multiplicity"
value (value Text "*"))
(object Attribute
tool "MOF"
name "rose2mof.return.isUnique"
value (value Text "true"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Statement::getNamedValuesInScope():Set(NamedValue)
|body:
| -- collect all NamedValue declarations introduced by statements in this statement's owning block, prior to this statement.
| let pos:Integer = self.block.statements->indexOf(self) in
| if pos > 1 then
| self.addNamedValuesWithNewNames(
| if self.block.statements->at(-1+pos).oclIsKindOf(NamedValueDeclaration) then
| self.block.statements->at(-1+pos).oclAsType(NamedValueDeclaration).namedValue->asSet()
| else
| Set{}
| endif,
| self.block.statements->at(-1+pos).getNamedValuesInScope())
| else
| -- first statement in block; consider block itself
| self.block.getNamedValuesInScope()
| endif
)))
quid "4B83FCC30196"
result "NamedValue"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "4522A56F0149")
(object Operation "getOwningClass"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "rose2mof.return.multiplicity"
value (value Text "0..1"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Statement::getOwningClass():SapClass
|body:
| self.block.getOwningClass()
)))
quid "4B84F0E00203"
result "SapClass"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "4432171B031E"))
abstract TRUE)
(object Class "Block"
quid "454606CB020A"
documentation
|A block contains statements and provides a scope, e.g., for block-local variables. Such a scope can be used for mapping to and from an operation's signature. A block accepts a number of values for a set of variables and as such is parameterizable. Additional variables can be introduced in the block that will not be provided to the block by its surrounding context. Those are considered the block's "local variables."
|
|A block can be executed like in SmallTalk, dynamically binding its arguments at runtime.
|
|With this, an operation is only a very thin wrapper around a Block.
|
|The parameters of a block are always defined by the signature that is implemented by the block.
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4975FB74030D"
supplier "Logical View::data::classes::FunctionSignatureImplementation"
quidu "4974995A0069")
(object Inheritance_Relationship
quid "4B85518D0167"
supplier "Logical View::data::classes::InScope"
quidu "4B85514B0119"))
operations (list Operations
(object Operation "getOutermostBlock"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Block::getOutermostBlock():Block
|body:
| if self.owningStatement->notEmpty() then
| self.owningStatement.block.getOutermostBlock()
| else
| self
| endif
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "4925623D029F"
documentation "Walks up the owningStatement/nestedBlocks association to find owning statements and their owning blocks transitively until it arrives at a block that is not owned by a statement. That block is then returned. Usually, such a block would be the implementation of either a function or a method signature."
result "Block"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "454606CB020A")
(object Operation "localIsSideEffectFree"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Block::localIsSideEffectFree():Boolean
|body:
| self.statements->forAll(s|s.isSideEffectFreeForBlock(self))
)))
quid "4925687402EE"
result "Boolean"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "39A2BDA60392")
(object Operation "getNamedValuesInScope"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "rose2mof.return.multiplicity"
value (value Text "*"))
(object Attribute
tool "MOF"
name "rose2mof.return.isUnique"
value (value Text "true"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Block::getNamedValuesInScope():Set(data::classes::NamedValue)
|body:
| self.addNamedValuesWithNewNames(
| -- Handle Foreach
| let s:Set(data::classes::NamedValue)=Set{} in
| s->union(if owningStatement.oclIsKindOf(Foreach) and owningStatement->notEmpty() then
| owningStatement.oclAsType(Foreach).forVariable.oclAsType(data::classes::NamedValue)->asSet()
| else
| Set{}
| endif)->union(
| -- add parameters for those blocks that are used as a signature implementation
| functionSignature->collect(input->iterate(i; result:Set(data::classes::NamedValue)=Set{} | result->including(i)))
| )->union(
| implements_->collect(input->iterate(i; result:Set(data::classes::NamedValue)=Set{}| result->including(i)))
| )->asSet(),
| -- then ascend the block composition hierarchy and add all NamedValues defined in parent blocks before the occurrence of the statement with the nested block
| if owningStatement->notEmpty() then
| owningStatement.getNamedValuesInScope()
| else
| -- add formal object parameters from owning class
| let oc:data::classes::SapClass = self.getOwningClass() in
| if oc->notEmpty() then
| oc.formalObjectParameters->iterate(i; result:Set(data::classes::NamedValue)=Set{} | result->including(i))
| else
| let es:Set(data::classes::NamedValue) = Set{} in es
| endif
| endif)
)))
quid "4B84041C003E"
documentation
|Determines all NamedValues that are in scope for all statements of this block. For example, in the block of a Foreach statement, the Foreach Iterator is in scope for all contained statements. If the block is nested in a statement (such as for an "if" statement), the NamedValues in scope for the containing statement are added as well. Additionally, if the block occurs as a signature implementation, the signature parameters are added. If this block occurs in an object-parameterized class, the formal object parameters are also added.
|
|
result "NamedValue"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "4522A56F0149")
(object Operation "getOwningClass"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true"))
(object Attribute
tool "MOF"
name "rose2mof.return.multiplicity"
value (value Text "0..1"))
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context Block::getOwningClass():SapClass
|body:
| let outermost:Block = self.getOutermostBlock() in
| let implementedSignature:data::classes::Signature = outermost.getImplementedSignature() in
| if implementedSignature->notEmpty() then
| implementedSignature.getOwningClass()
| else
| null
| endif
)))
quid "4B84099F038A"
result "SapClass"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "4432171B031E"))
nestedClasses (list nestedClasses
(object Class "DoesNotOwnIterators"
quid "47B2D480003E"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "47B2D8FD0196"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Block
|inv:
| self.variables->select(i|i.oclIsKindOf(Iterator))->isEmpty()
)
opExportControl "Public"
uid 0)))
(object Class "IsSideEffectFreeIfImplementsSideEffectFreeSignature"
quid "492568B60399"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "492568C900CB"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Block
|inv:
| self.implements_->notEmpty() implies
| (self.implements_.sideEffectFree implies self.isSideEffectFree())
)
opExportControl "Public"
uid 0)))
(object Class "DistinctNamedValueNames"
quid "49B7F26B02D8"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "49B7F2840362"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Block
|inv:
| self.variables->forAll( i, j | i <> j implies i.name <> j.name )
)
opExportControl "Public"
uid 0)))))
(object Class "IfElse"
quid "45471B57000A"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "45471B7D0181"
supplier "Logical View::behavioral::actions::ConditionalStatement"
quidu "4B8518F803B9")
(object Inheritance_Relationship
quid "45471B4C0127"
supplier "Logical View::behavioral::actions::StatementWithNestedBlocks"
quidu "49255EB1034B"))
operations (list Operations
(object Operation "getIfBlock"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context IfElse::getIfBlock():Block
|body:
| self.nestedBlocks->at(1)
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "4925619E029F"
result "Block"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "454606CB020A")
(object Operation "getElseBlock"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context IfElse::getElseBlock():Block
|body:
| if self.nestedBlocks->size() > 1 then
| self.nestedBlocks->at(2)
| else
| null
| endif
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "492561A2036B"
result "Block"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "454606CB020A")))
(object Class "WhileLoop"
quid "45471B58016A"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "45471B7E0219"
supplier "Logical View::behavioral::actions::ConditionalStatement"
quidu "4B8518F803B9")
(object Inheritance_Relationship
quid "492560F10242"
supplier "Logical View::behavioral::actions::SingleBlockStatement"
quidu "4925602703B9"))
operations (list Operations
(object Operation "getLoopBody"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.OperationCodeOcl"
value (value Text
|context WhileLoop::getLoopBody():Block
|body:
| self.nestedBlocks->at(1)
))
(object Attribute
tool "MOF"
name "rose2mof.isQuery"
value (value Text "true")))
quid "492561970399"
result "Block"
concurrency "Sequential"
opExportControl "Public"
uid 0
quidu "454606CB020A")))
(object Class "Foreach"
quid "456DFC3C0125"
documentation "We may not need a Foreach statement if we use internal iterators in collections together with blocks. However, how would a collection class implement the internal iterator without a for statement? Could this work with a WhileLoop only?"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4925608800FA"
supplier "Logical View::behavioral::actions::SingleBlockStatement"
quidu "4925602703B9"))
class_attributes (list class_attribute_list
(object ClassAttribute "parallel"
quid "456DFC5001F9"
type "Boolean"
quidu "39A2BDA60392"
exportControl "Public"))
nestedClasses (list nestedClasses
(object Class "VariableOwnedByRightBlock"
quid "471DF65302FD"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "471DF6680177"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Foreach
|inv:
| self.forVariable.owner = self.nestedBlocks->at(1)
)
opExportControl "Public"
uid 0)))))
(object Class "Return"
quid "4577E38403E0"
documentation "Returns a value from a block. Must be the last statement of a block."
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4577E39701D4"
supplier "Logical View::behavioral::actions::StatementWithArgument"
quidu "492573460213"))
nestedClasses (list nestedClasses
(object Class "ReturnMustBeLastInBlock"
quid "4578381000DA"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "4578382700AB"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Return
|inv:
| self = self.block.statements->last()
)
opExportControl "Public"
uid 0)))
(object Class "ReturnTypeMustMatch"
quid "492562ED005D"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "492562FC003E"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Return
|inv:
| self.argument.getType().conformsTo(self.getOutermostBlock().getImplementedSignature().output)
)
opExportControl "Public"
uid 0)))))
(object Class "AddLink"
quid "457841700027"
documentation
|Adds a link to an association. As opposed to, e.g., MOF 1.4 semantics, if a link would violate an upper multiplicity of 1 by adding a second link to an object, the existing link will implicitly be replaced by this AddLink statement.
|
|When *at* is unspecified for an ordered association, the link will be added at the "end."
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "457841A002F7"
supplier "Logical View::behavioral::actions::LinkManipulationStatement"
quidu "457841890204")))
(object Class "RemoveLink"
quid "4578417F0187"
documentation
|Removes the link if it exists, from the association specified.
|
|If no *at* position is specified for an association with one ordered end, one occurrence of the link specified by the two *objects* will be removed at random.
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "457841A403C5"
supplier "Logical View::behavioral::actions::LinkManipulationStatement"
quidu "457841890204")))
(object Class "LinkManipulationStatement"
quid "457841890204"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4578417601F2"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190"))
class_attributes (list class_attribute_list
(object ClassAttribute "at"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "rose2mof.multiplicity"
value (value Text "0..1")))
quid "4A6D6C030271"
documentation "An optional position specification which will be ignored for associations with no ordered ends. If not set for an association with ordered ends, a reasonable default will be chosen."
type "Integer"
quidu "3B538AB300B3"
exportControl "Public"))
abstract TRUE
nestedClasses (list nestedClasses
(object Class "ObjectsMustConformToEndTypes"
quid "457842F1032E"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "4578430B0078"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context LinkManipulationStatement
|inv:
| Sequence{1..self.objects->size()}->forAll(i:Integer |
| objects->at(i).getType().conformsTo(association.ends->at(i).type))
)
opExportControl "Public"
uid 0)))
(object Class "BlockMustNotImplementSideEffectFreeSignature"
quid "489D61BF0222"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "489D61D50138"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context LinkManipulationStatement
|inv:
| self.block.getImplementedSignature()->notEmpty() implies
| not self.block.getImplementedSignature().sideEffectFree
)
opExportControl "Public"
uid 0)))
(object Class "NoValueMustBeModified"
quid "4942611D02DE"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "4942615600DA"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context LinkManipulationStatement
|inv:
| self.association.ends->forAll(ae:data::classes::AssociationEnd |
| ae.type.clazz.valueType implies not ae.contributesToEquality)
)
opExportControl "Public"
uid 0)))))
(object Class "ExpressionStatement"
quid "45AA9A16016E"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "45AA9A530242"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190")))
(object Class "Sort"
quid "4715E4DA0271")
(object Class "QueryInvocation"
quid "4715E505007D")
(object Class "Constant"
quid "47A717EE033C"
documentation
|A constant always has an initial value defined and cannot be changed after that initial assignment anymore.
|
|If a constant has no initExpression assigned, it's type needs to support a lower multiplicity of 0, and the value of the constant will be an empty multi-object.
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "49889B790210"
supplier "Logical View::behavioral::actions::NamedValueWithOptionalInitExpression"
quidu "49889B6400B0"))
nestedClasses (list nestedClasses
(object Class "InitExpressionTypeMustMatchVariableType"
quid "47A72AC802FD"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "47A72AC802FE"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Constant
|inv:
| self.initExpression->notEmpty() implies self.initExpression.getType().conformsTo(self.getType())
)
opExportControl "Public"
uid 0)))))
(object Class "Variable"
quid "47A717EF035B"
documentation
|As opposed to a Constant, a Variable can be used in an Assignment.
|
|If a variable has no initExpression assigned, it's type needs to support a lower multiplicity of 0, and the value of the variable will be an empty multi-object.
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "49889B7F0280"
supplier "Logical View::behavioral::actions::NamedValueWithOptionalInitExpression"
quidu "49889B6400B0"))
operations (list Operations
(object Operation "getCommonTypeOfAssignments"
quid "49063AB3032C"
concurrency "Sequential"
opExportControl "Public"
uid 0))
nestedClasses (list nestedClasses
(object Class "InitExpressionTypeMustMatchVariableType"
quid "47A72AB70109"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "47A72AB7010A"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context Variable
|inv:
| self.initExpression->notEmpty() implies self.initExpression.getType().conformsTo(self.getType())
)
opExportControl "Public"
uid 0)))))
(object Class "Iterator"
quid "47A719D200EA"
documentation "A named value that can neither be assigned nor needs an initialization expression. It obtains its value by an iterator statement implicitly."
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "47A719D70280"
supplier "Logical View::data::classes::NamedValue"
quidu "4522A56F0149")))
(object Class "NamedValueDeclaration"
quid "48873D45021C"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "48873D610119"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190")))
(object Class "StatementWithNestedBlocks"
quid "49255EB1034B"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "49255ECF007D"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190")))
(object Class "SingleBlockStatement"
quid "4925602703B9"
documentation "Constrains the number of blocks that this statement can own to 1."
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4925608200BB"
supplier "Logical View::behavioral::actions::StatementWithNestedBlocks"
quidu "49255EB1034B"))
nestedClasses (list nestedClasses
(object Class "OwnsExactlyOneBlock"
quid "492560530128"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "492560600242"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context SingleBlockStatement
|inv:
| self.nestedBlocks->size() = 1
)
opExportControl "Public"
uid 0)))))
(object Class "StatementWithArgument"
quid "492573460213"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "49257357038A"
supplier "Logical View::dataaccess::expressions::WithArgument"
quidu "4577E587019C")
(object Inheritance_Relationship
quid "49256DF60271"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190"))
abstract TRUE)
(object Class "NamedValueWithOptionalInitExpression"
quid "49889B6400B0"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "49889B750153"
supplier "Logical View::data::classes::NamedValue"
quidu "4522A56F0149"))
abstract TRUE
nestedClasses (list nestedClasses
(object Class "AssignmentCompatibility"
quid "49889C4B0335"
stereotype "constraint"
operations (list Operations
(object Operation "OCL"
quid "49889C4B0336"
concurrency "Sequential"
semantics (object Semantic_Info
PDL
|context NamedValueWithOptionalInitExpression
|inv:
| self.initExpression->forAll(ie | ie.getType().conformsTo(self.getType()))
)
opExportControl "Public"
uid 0)))))
(object Class "ConditionalStatement"
quid "4B8518F803B9"
superclasses (list inheritance_relationship_list
(object Inheritance_Relationship
quid "4B85190101D4"
supplier "Logical View::dataaccess::expressions::Conditional"
quidu "45471B4401F7")
(object Inheritance_Relationship
quid "4B851CA901D4"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190"))
abstract TRUE)
(object Association "$UNNAMED$0"
quid "4522A2B7015C"
roles (list role_list
(object Role "assignTo"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "4522A2B703D3"
label "assignTo"
supplier "Logical View::behavioral::actions::Variable"
quidu "47A717EF035B"
client_cardinality (value cardinality "1")
is_navigable TRUE)
(object Role "assignments"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 202)))
quid "4522A2B703D5"
label "assignments"
supplier "Logical View::behavioral::actions::Assignment"
quidu "45229F090021"
client_cardinality (value cardinality "0..*")
is_navigable TRUE)))
(object Association "$UNNAMED$1"
quid "454606F903AA"
documentation "Statements can only occur inside blocks."
roles (list role_list
(object Role "statements"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "454606FA01F3"
label "statements"
supplier "Logical View::behavioral::actions::Statement"
quidu "4545FC1D0190"
client_cardinality (value cardinality "0..*")
Constraints "ordered"
Containment "By Value"
is_navigable TRUE)
(object Role "block"
quid "454606FA01FD"
label "block"
supplier "Logical View::behavioral::actions::Block"
quidu "454606CB020A"
client_cardinality (value cardinality "1")
is_navigable TRUE
is_aggregate TRUE)))
(object Association "$UNNAMED$2"
quid "45472E2E0218"
roles (list role_list
(object Role "variables"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "45472E2F0043"
label "variables"
supplier "Logical View::data::classes::NamedValue"
quidu "4522A56F0149"
client_cardinality (value cardinality "0..*")
Containment "By Value"
is_navigable TRUE)
(object Role "owner"
quid "45472E2F004D"
label "owner"
supplier "Logical View::behavioral::actions::Block"
quidu "454606CB020A"
client_cardinality (value cardinality "0..1")
is_navigable TRUE
is_aggregate TRUE)))
(object Association "$UNNAMED$3"
quid "456DFC800267"
roles (list role_list
(object Role "collection"
quid "456DFC8100CE"
label "collection"
supplier "Logical View::dataaccess::expressions::Expression"
quidu "450E63AB03A2"
client_cardinality (value cardinality "1")
is_navigable TRUE)
(object Role "$UNNAMED$4"
quid "456DFC8100E2"
supplier "Logical View::behavioral::actions::Foreach"
quidu "456DFC3C0125")))
(object Association "$UNNAMED$5"
quid "457841C601B1"
roles (list role_list
(object Role "association"
quid "457841C701BD"
label "association"
supplier "Logical View::data::classes::Association"
quidu "44321DA40150"
client_cardinality (value cardinality "1")
is_navigable TRUE)
(object Role "$UNNAMED$6"
quid "457841C701C7"
supplier "Logical View::behavioral::actions::LinkManipulationStatement"
quidu "457841890204"
client_cardinality (value cardinality "0..*"))))
(object Association "$UNNAMED$7"
quid "457842A10116"
roles (list role_list
(object Role "objects"
quid "457842A20095"
label "objects"
supplier "Logical View::dataaccess::expressions::Expression"
quidu "450E63AB03A2"
client_cardinality (value cardinality "2")
Constraints "ordered"
Containment "By Value"
is_navigable TRUE)
(object Role "$UNNAMED$8"
quid "457842A200C7"
supplier "Logical View::behavioral::actions::LinkManipulationStatement"
quidu "457841890204"
client_cardinality (value cardinality "0..1")
is_aggregate TRUE)))
(object Association "$UNNAMED$9"
quid "45AA9A1E0301"
roles (list role_list
(object Role "expression"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "45AA9A1F00DB"
label "expression"
supplier "Logical View::dataaccess::expressions::Expression"
quidu "450E63AB03A2"
client_cardinality (value cardinality "1")
Containment "By Value"
is_navigable TRUE)
(object Role "expressionStatement"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 202)))
quid "45AA9A1F010E"
label "expressionStatement"
supplier "Logical View::behavioral::actions::ExpressionStatement"
quidu "45AA9A16016E"
client_cardinality (value cardinality "0..1")
is_navigable TRUE
is_aggregate TRUE)))
(object Association "$UNNAMED$10"
quid "471DF5C902AF"
documentation "For Foreach statement binds a variable in its block to the values of the collection expression, one after the other. The variable is owned by the block."
roles (list role_list
(object Role "forVariable"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "471DF5CA0119"
label "forVariable"
supplier "Logical View::behavioral::actions::Iterator"
quidu "47A719D200EA"
client_cardinality (value cardinality "1")
Containment "By Value"
is_navigable TRUE)
(object Role "boundToFor"
quid "471DF5CA011B"
label "boundToFor"
supplier "Logical View::behavioral::actions::Foreach"
quidu "456DFC3C0125"
client_cardinality (value cardinality "0..1")
is_navigable TRUE
is_aggregate TRUE)))
(object Association "$UNNAMED$11"
quid "47A71B130280"
roles (list role_list
(object Role "initExpression"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "47A71B140109"
label "initExpression"
supplier "Logical View::dataaccess::expressions::Expression"
quidu "450E63AB03A2"
client_cardinality (value cardinality "0..1")
Containment "By Value"
is_navigable TRUE)
(object Role "initExpressionFor"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 202)))
quid "47A71B140128"
label "initExpressionFor"
supplier "Logical View::behavioral::actions::NamedValueWithOptionalInitExpression"
quidu "49889B6400B0"
client_cardinality (value cardinality "0..1")
is_navigable TRUE
is_aggregate TRUE)))
(object Association "$UNNAMED$12"
quid "49255F0300DA"
roles (list role_list
(object Role "owningStatement"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 202)))
quid "49255F0300DB"
label "owningStatement"
supplier "Logical View::behavioral::actions::StatementWithNestedBlocks"
quidu "49255EB1034B"
client_cardinality (value cardinality "0..1")
is_navigable TRUE
is_aggregate TRUE)
(object Role "nestedBlocks"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "49255F030128"
label "nestedBlocks"
supplier "Logical View::behavioral::actions::Block"
quidu "454606CB020A"
client_cardinality (value cardinality "1..2")
Constraints "ordered"
Containment "By Value"
is_navigable TRUE)))
(object Association "$UNNAMED$13"
quid "49B64B6F0008"
roles (list role_list
(object Role "namedValue"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 203)))
quid "49B64B6F0279"
label "namedValue"
supplier "Logical View::behavioral::actions::NamedValueWithOptionalInitExpression"
quidu "49889B6400B0"
client_cardinality (value cardinality "1")
is_navigable TRUE)
(object Role "namedValueDeclaration"
attributes (list Attribute_Set
(object Attribute
tool "MOF"
name "sap2mof.store"
value ("RoleStoreKindSet" 202)))
quid "49B64B6F027B"
label "namedValueDeclaration"
supplier "Logical View::behavioral::actions::NamedValueDeclaration"
quidu "48873D45021C"
client_cardinality (value cardinality "0..1")
is_navigable TRUE))))
logical_presentations (list unit_reference_list
(object ClassDiagram "Assignment"
quid "45229EF70148"
title "Assignment"
zoom 100
max_height 28350
max_width 21600
origin_x 0
origin_y 0
items (list diagram_item_list
(object ClassView "Class" "Logical View::data::classes::NamedValue" @2
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (378, 747)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @2
location (111, 643)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "NamedValue")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4522A56F0149"
width 552
height 232
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::Expression" @3
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1026, 807)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @3
location (759, 578)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "Expression")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "450E63AB03A2"
width 552
height 482
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::WithArgument" @4
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (983, 1398)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @4
location (836, 1323)
fill_color 13434879
nlines 1
max_width 294
justify 0
label "WithArgument")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4577E587019C"
width 312
height 174
annotation 8
autoResize TRUE)
(object AssociationViewNew "" @5
location (984, 1179)
stereotype TRUE
line_color 3342489
quidu "4577E58D0258"
roleview_list (list RoleViews
(object RoleView "argument" @6
Parent_View @5
location (771, 935)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @7
Parent_View @6
location (859, 1091)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 196
justify 0
label "+argument"
pctDist 0.666667
height 126
orientation 0)
stereotype TRUE
line_color 3342489
quidu "4577E58D025A"
client @5
supplier @3
vertices (list Points
(984, 1179)
(984, 1047))
line_style 3
origin_attachment (984, 1179)
terminal_attachment (984, 1047)
label (object SegLabel @8
Parent_View @6
location (1039, 1095)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.641667
height 55
orientation 1))
(object RoleView "argumentOf" @9
Parent_View @5
location (771, 935)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @10
Parent_View @9
location (1141, 1269)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 450
justify 0
label "+argumentOf"
pctDist 0.689394
height 157
orientation 0)
stereotype TRUE
line_color 3342489
quidu "4577E58D0259"
client @5
supplier @4
vertices (list Points
(984, 1179)
(984, 1311))
line_style 3
origin_attachment (984, 1179)
terminal_attachment (984, 1311)
label (object SegLabel @11
Parent_View @9
location (911, 1269)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.689394
height 74
orientation 1))))
(object ClassView "Class" "Logical View::data::classes::TypedElement" @12
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (730, 266)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @12
location (582, 137)
fill_color 13434879
nlines 1
max_width 296
justify 0
label "TypedElement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4717B7BC031A"
width 314
height 282
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::data::classes::SapClass" @13
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1955, 1015)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @13
location (1471, 411)
fill_color 13434879
nlines 1
max_width 968
justify 0
label "SapClass")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4432171B031E"
width 986
height 1232
annotation 8
autoResize TRUE)
(object InheritTreeView "" @14
location (730, 497)
line_color 3342489
fill_color 13434879
supplier @12
vertices (list Points
(730, 497)
(730, 407)))
(object InheritView "l" @15
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @15
location (1018, 532)
anchor_loc 1
nlines 1
max_width 60
justify 0
label "l")
stereotype TRUE
line_color 3342489
quidu "4717B87503E5"
client @3
supplier @12
vertices (list Points
(1018, 566)
(1018, 497))
line_style 3
origin_attachment (1018, 566)
terminal_attachment (1018, 497)
drawSupplier @14)
(object InheritView "" @16
stereotype TRUE
line_color 3342489
quidu "4717B85102FB"
client @2
supplier @12
vertices (list Points
(355, 631)
(355, 497))
line_style 3
origin_attachment (355, 631)
terminal_attachment (355, 497)
drawSupplier @14)
(object ClassView "Class" "Logical View::behavioral::actions::Variable" @17
ShowCompartmentStereotypes TRUE
SuppressOperation TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (349, 2029)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @17
location (257, 1977)
fill_color 13434879
nlines 1
max_width 184
justify 0
label "Variable")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "47A717EF035B"
width 202
height 128
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::Assignment" @18
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1021, 2034)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @18
location (896, 1983)
fill_color 13434879
nlines 1
max_width 250
justify 0
label "Assignment")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45229F090021"
width 268
height 126
annotation 8
autoResize TRUE)
(object AssociationViewNew "$UNNAMED$0" @19
location (668, 2010)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
stereotype TRUE
line_color 3342489
quidu "4522A2B7015C"
roleview_list (list RoleViews
(object RoleView "assignTo" @20
Parent_View @19
location (409, 1695)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @21
Parent_View @20
location (565, 2049)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 188
justify 0
label "+assignTo"
pctDist 0.472637
height 39
orientation 0)
stereotype TRUE
line_color 3342489
quidu "4522A2B703D3"
client @19
supplier @17
vertices (list Points
(668, 2010)
(450, 2010))
line_style 3
origin_attachment (668, 2010)
terminal_attachment (450, 2010)
label (object SegLabel @22
Parent_View @20
location (521, 1964)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "1"
pctDist 0.675325
height 47
orientation 1))
(object RoleView "assignments" @23
Parent_View @19
location (409, 1695)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @24
Parent_View @23
location (738, 1973)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 256
justify 0
label "+assignments"
pctDist 0.318408
height 38
orientation 0)
stereotype TRUE
line_color 3342489
quidu "4522A2B703D5"
client @19
supplier @18
vertices (list Points
(668, 2010)
(887, 2010))
line_style 3
origin_attachment (668, 2010)
terminal_attachment (887, 2010)
label (object SegLabel @25
Parent_View @23
location (842, 2043)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..*"
pctDist 0.796020
height 33
orientation 1))))
(object NoteView @26
location (1956, 1909)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @26
location (1540, 1809)
fill_color 13434879
nlines 4
max_width 796
label "Do we really need assignments? Not supporting them would have the benefit of not having to do complicated inference for variables without declared type.")
line_color 3342489
fill_color 13434879
width 856
height 212)
(object ClassView "Class" "Logical View::behavioral::actions::StatementWithArgument" @27
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1018, 1769)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @27
location (778, 1718)
fill_color 13434879
nlines 1
max_width 480
justify 0
label "StatementWithArgument")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "492573460213"
width 498
height 126
annotation 8
autoResize TRUE)
(object InheritView "" @28
stereotype TRUE
line_color 3342489
quidu "4925735300FA"
client @18
supplier @27
vertices (list Points
(1006, 1971)
(1006, 1832))
line_style 3
origin_attachment (1006, 1971)
terminal_attachment (1006, 1832))
(object InheritView "" @29
stereotype TRUE
line_color 3342489
quidu "49257357038A"
client @27
supplier @4
vertices (list Points
(1003, 1705)
(1003, 1485))
line_style 3
origin_attachment (1003, 1705)
terminal_attachment (1003, 1485))))
(object ClassDiagram "Blocks and Statements"
quid "4545FBF602C1"
title "Blocks and Statements"
zoom 100
max_height 28350
max_width 21600
origin_x 0
origin_y 0
items (list diagram_item_list
(object NoteView @30
location (2458, 537)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @30
location (2167, 387)
fill_color 13434879
nlines 6
max_width 546
label "An expression can be used as a statement, particularly in case the expression has side effects, such as invoking an operation with side effects.")
line_color 3342489
fill_color 13434879
width 606
height 313)
(object ClassView "Class" "Logical View::behavioral::actions::Assignment" @31
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (2604, 2312)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @31
location (2479, 2261)
fill_color 13434879
nlines 1
max_width 250
justify 0
label "Assignment")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45229F090021"
width 268
height 126
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::Foreach" @32
ShowCompartmentStereotypes TRUE
SuppressAttribute TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (245, 1718)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @32
location (153, 1667)
fill_color 13434879
nlines 1
max_width 184
justify 0
label "Foreach")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "456DFC3C0125"
width 202
height 126
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::Return" @33
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (2217, 2310)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @33
location (2136, 2258)
fill_color 13434879
nlines 1
max_width 162
justify 0
label "Return")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4577E38403E0"
height 128
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::ObjectBasedExpression" @34
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1837, 1843)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @34
location (1596, 1765)
fill_color 13434879
nlines 1
max_width 482
justify 0
label "ObjectBasedExpression")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "453E0FC80335"
width 500
height 180
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::Conditional" @35
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (926, 1541)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @35
location (793, 1466)
fill_color 13434879
nlines 1
max_width 266
justify 0
label "Conditional")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45471B4401F7"
width 284
height 174
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::WithArgument" @36
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (2385, 1763)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @36
location (2238, 1688)
fill_color 13434879
nlines 1
max_width 294
justify 0
label "WithArgument")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4577E587019C"
width 312
height 174
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::Expression" @37
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (2039, 1297)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @37
location (1772, 1068)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "Expression")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "450E63AB03A2"
width 552
height 482
annotation 8
autoResize TRUE)
(object AssociationViewNew "" @38
location (2047, 1645)
stereotype TRUE
line_color 3342489
quidu "453649650215"
roleview_list (list RoleViews
(object RoleView "objectBasedExpression" @39
Parent_View @38
location (841, 936)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @40
Parent_View @39
location (1793, 1722)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 450
justify 0
label "+objectBasedExpression"
pctDist 0.728000
height 255
orientation 1)
stereotype TRUE
line_color 3342489
quidu "4536496701C8"
client @38
supplier @34
vertices (list Points
(2047, 1645)
(2047, 1752))
line_style 3
origin_attachment (2047, 1645)
terminal_attachment (2047, 1752)
label (object SegLabel @41
Parent_View @39
location (2123, 1718)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.688000
height 76
orientation 0))
(object RoleView "object" @42
Parent_View @38
location (841, 936)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @43
Parent_View @42
location (2142, 1585)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 139
justify 0
label "+object"
pctDist 0.563830
height 95
orientation 1)
stereotype TRUE
line_color 3342489
quidu "4536496701B4"
client @38
supplier @37
vertices (list Points
(2047, 1645)
(2047, 1538))
line_style 3
origin_attachment (2047, 1645)
terminal_attachment (2047, 1538)
label (object SegLabel @44
Parent_View @42
location (2006, 1580)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 300
justify 0
label "1"
pctDist 0.606383
height 42
orientation 0))))
(object AssociationViewNew "" @45
location (1298, 1352)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
stereotype TRUE
line_color 3342489
quidu "45471B920394"
roleview_list (list RoleViews
(object RoleView "condition" @46
Parent_View @45
location (1019, 308)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @47
Parent_View @46
location (1555, 1380)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 204
justify 0
label "+condition"
pctDist 0.552326
height 28
orientation 1)
stereotype TRUE
line_color 3342489
quidu "45471B930205"
client @45
supplier @37
vertices (list Points
(1298, 1352)
(1763, 1352))
line_style 3
origin_attachment (1298, 1352)
terminal_attachment (1763, 1352)
label (object SegLabel @48
Parent_View @46
location (1720, 1384)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "1"
pctDist 0.906977
height 32
orientation 1))
(object RoleView "conditional" @49
Parent_View @45
location (1019, 308)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @50
Parent_View @49
location (893, 1361)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 224
justify 0
label "+conditional"
pctDist 0.800000
height 42
orientation 1)
stereotype TRUE
line_color 3342489
quidu "45471B93020F"
client @45
supplier @35
vertices (list Points
(1298, 1352)
(934, 1352)
(934, 1454))
line_style 3
origin_attachment (1298, 1352)
terminal_attachment (934, 1454)
label (object SegLabel @51
Parent_View @49
location (997, 1410)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.905797
height 63
orientation 0))))
(object AssociationViewNew "" @52
location (2313, 1606)
stereotype TRUE
line_color 3342489
quidu "4577E58D0258"
roleview_list (list RoleViews
(object RoleView "argument" @53
Parent_View @52
location (492, 556)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @54
Parent_View @53
location (2374, 3795)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 196
justify 0
label "+argument"
pctDist -32.200001
height 61
orientation 1)
stereotype TRUE
line_color 3342489
quidu "4577E58D025A"
client @52
supplier @37
vertices (list Points
(2313, 1606)
(2313, 1538))
line_style 3
origin_attachment (2313, 1606)
terminal_attachment (2313, 1538)
label (object SegLabel @55
Parent_View @53
location (2310, 3782)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist -32.000000
height 4
orientation 0))
(object RoleView "argumentOf" @56
Parent_View @52
location (492, 556)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @57
Parent_View @56
location (2473, 1650)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 450
justify 0
label "+argumentOf"
pctDist 0.643678
height 160
orientation 0)
stereotype TRUE
line_color 3342489
quidu "4577E58D0259"
client @52
supplier @36
vertices (list Points
(2313, 1606)
(2313, 1675))
line_style 3
origin_attachment (2313, 1606)
terminal_attachment (2313, 1675)
label (object SegLabel @58
Parent_View @56
location (2259, 1646)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.597701
height 55
orientation 1))))
(object ClassView "Class" "Logical View::behavioral::actions::ExpressionStatement" @59
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1004, 1250)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @59
location (793, 1199)
fill_color 13434879
nlines 1
max_width 422
justify 0
label "ExpressionStatement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45AA9A16016E"
width 440
height 126
annotation 8
autoResize TRUE)
(object AssociationViewNew "$UNNAMED$9" @60
location (1493, 1234)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
stereotype TRUE
line_color 3342489
quidu "45AA9A1E0301"
roleview_list (list RoleViews
(object RoleView "expression" @61
Parent_View @60
location (-148, 665)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @62
Parent_View @61
location (1604, 1208)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 234
justify 0
label "+expression"
pctDist 0.413793
height 27
orientation 0)
stereotype TRUE
line_color 3342489
quidu "45AA9A1F00DB"
client @60
supplier @37
vertices (list Points
(1493, 1234)
(1763, 1234))
line_style 3
origin_attachment (1493, 1234)
terminal_attachment (1763, 1234)
label (object SegLabel @63
Parent_View @61
location (1742, 1273)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "1"
pctDist 0.924528
height 39
orientation 1))
(object RoleView "expressionStatement" @64
Parent_View @60
location (-148, 665)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @65
Parent_View @64
location (1465, 1276)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 412
justify 0
label "+expressionStatement"
pctDist 0.103896
height 42
orientation 0)
stereotype TRUE
line_color 3342489
quidu "45AA9A1F010E"
client @60
supplier @59
vertices (list Points
(1493, 1234)
(1224, 1234))
line_style 3
origin_attachment (1493, 1234)
terminal_attachment (1224, 1234)
label (object SegLabel @66
Parent_View @64
location (1285, 1202)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.776515
height 33
orientation 1))))
(object ClassView "Class" "Logical View::behavioral::actions::IfElse" @67
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (739, 2276)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @67
location (580, 2170)
fill_color 13434879
nlines 1
max_width 318
justify 0
label "IfElse")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45471B57000A"
width 336
height 236
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::WhileLoop" @68
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (214, 2300)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @68
location (56, 2219)
fill_color 13434879
nlines 1
max_width 316
justify 0
label "WhileLoop")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45471B58016A"
width 334
height 186
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::data::classes::SignatureImplementation" @69
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (397, 245)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @69
location (129, 141)
fill_color 13434879
nlines 1
max_width 536
justify 0
label "SignatureImplementation")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "47836ECF037A"
width 554
height 232
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::MethodCallExpression" @70
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1804, 2245)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @70
location (1559, 2141)
fill_color 13434879
nlines 1
max_width 490
justify 0
label "MethodCallExpression")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4522E05D00A8"
width 508
height 232
annotation 8
autoResize TRUE)
(object NoteView @71
location (1469, 256)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @71
location (1053, 87)
fill_color 13434879
nlines 6
max_width 797
label "TODO Recursively ensure that no statement violates a sideEffectFree setting of a Block's signature, in particular the subordinate Blocks of Conditional and Foreach, as well as all expressions used anywhere in a statement.")
line_color 3342489
fill_color 13434879
width 857
height 351)
(object ClassView "Class" "Logical View::behavioral::actions::Statement" @72
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1726, 691)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @72
location (1457, 510)
fill_color 13434879
nlines 1
max_width 538
justify 0
label "Statement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4545FC1D0190"
width 556
height 386
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::StatementWithNestedBlocks" @73
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (418, 1103)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @73
location (137, 1052)
fill_color 13434879
nlines 1
max_width 562
justify 0
label "StatementWithNestedBlocks")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "49255EB1034B"
width 580
height 126
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::Block" @74
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (564, 703)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @74
location (297, 547)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "Block")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "454606CB020A"
compartment (object Compartment
Parent_View @74
location (297, 608)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
icon_style "Icon"
fill_color 16777215
anchor 2
nlines 5
max_width 0)
width 552
height 336
annotation 8
autoResize TRUE)
(object AssociationViewNew "$UNNAMED$1" @75
location (1144, 628)
stereotype TRUE
line_color 3342489
quidu "454606F903AA"
roleview_list (list RoleViews
(object RoleView "block" @76
Parent_View @75
location (169, 218)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @77
Parent_View @76
location (937, 587)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 132
justify 0
label "+block"
pctDist 0.680751
height 42
orientation 1)
stereotype TRUE
line_color 3342489
quidu "454606FA01FD"
client @75
supplier @74
vertices (list Points
(1144, 628)
(840, 628))
line_style 3
origin_attachment (1144, 628)
terminal_attachment (840, 628)
label (object SegLabel @78
Parent_View @76
location (882, 679)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "1"
pctDist 0.865169
height 51
orientation 0))
(object RoleView "statements" @79
Parent_View @75
location (169, 218)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @80
Parent_View @79
location (1258, 589)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 236
justify 0
label "+statements"
pctDist 0.375587
height 40
orientation 0)
stereotype TRUE
line_color 3342489
quidu "454606FA01F3"
client @75
supplier @72
vertices (list Points
(1144, 628)
(1448, 628))
line_style 3
origin_attachment (1144, 628)
terminal_attachment (1448, 628)
label (object SegLabel @81
Parent_View @79
location (1368, 666)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..*"
pctDist 0.741573
height 38
orientation 1)
label (object SegLabel @82
Parent_View @79
location (1288, 708)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 3
anchor_loc 1
nlines 1
max_width 160
justify 0
label "{ordered}"
pctDist 0.477528
height 80
orientation 1))))
(object AssociationViewNew "$UNNAMED$12" @83
location (525, 954)
stereotype TRUE
line_color 3342489
quidu "49255F0300DA"
roleview_list (list RoleViews
(object RoleView "owningStatement" @84
Parent_View @83
location (104, -706)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @85
Parent_View @84
location (332, 1012)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 340
justify 0
label "+owningStatement"
pctDist 0.688172
height 194
orientation 1)
stereotype TRUE
line_color 3342489
quidu "49255F0300DB"
client @83
supplier @73
vertices (list Points
(525, 954)
(525, 1039))
line_style 3
origin_attachment (525, 954)
terminal_attachment (525, 1039)
label (object SegLabel @86
Parent_View @84
location (595, 1009)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "0..1"
pctDist 0.645161
height 70
orientation 0))
(object RoleView "nestedBlocks" @87
Parent_View @83
location (104, -706)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object SegLabel @88
Parent_View @87
location (362, 902)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 1
anchor_loc 1
nlines 1
max_width 283
justify 0
label "+nestedBlocks"
pctDist 0.630435
height 164
orientation 0)
stereotype TRUE
line_color 3342489
quidu "49255F030128"
client @83
supplier @74
vertices (list Points
(525, 954)
(525, 870))
line_style 3
origin_attachment (525, 954)
terminal_attachment (525, 870)
label (object SegLabel @89
Parent_View @87
location (589, 905)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 2
anchor_loc 1
nlines 1
max_width 15
justify 0
label "1..2"
pctDist 0.597826
height 64
orientation 1)
label (object SegLabel @90
Parent_View @87
location (736, 899)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
anchor 3
anchor_loc 1
nlines 1
max_width 159
justify 0
label "{ordered}"
pctDist 0.655914
height 211
orientation 1))))
(object ClassView "Class" "Logical View::behavioral::actions::SingleBlockStatement" @91
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (236, 1452)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @91
location (18, 1401)
fill_color 13434879
nlines 1
max_width 436
justify 0
label "SingleBlockStatement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4925602703B9"
width 454
height 126
annotation 8
autoResize TRUE)
(object InheritView "" @92
stereotype TRUE
line_color 3342489
quidu "4925608800FA"
client @32
supplier @91
vertices (list Points
(219, 1654)
(219, 1515))
line_style 3
origin_attachment (219, 1654)
terminal_attachment (219, 1515))
(object ClassView "Class" "Logical View::behavioral::actions::StatementWithArgument" @93
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (2441, 2004)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @93
location (2202, 1953)
fill_color 13434879
nlines 1
max_width 478
justify 0
label "StatementWithArgument")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "492573460213"
width 496
height 126
annotation 8
autoResize TRUE)
(object InheritTreeView "" @94
location (2441, 2187)
line_color 3342489
fill_color 13434879
supplier @93
vertices (list Points
(2441, 2187)
(2441, 2067)))
(object InheritView "" @95
stereotype TRUE
line_color 3342489
quidu "4577E39701D4"
client @33
supplier @93
vertices (list Points
(2218, 2246)
(2218, 2187))
line_style 3
origin_attachment (2218, 2246)
terminal_attachment (2218, 2187)
drawSupplier @94)
(object InheritView "" @96
stereotype TRUE
line_color 3342489
quidu "4925735300FA"
client @31
supplier @93
vertices (list Points
(2609, 2249)
(2609, 2187))
line_style 3
origin_attachment (2609, 2249)
terminal_attachment (2609, 2187)
drawSupplier @94)
(object InheritView "" @97
stereotype TRUE
line_color 3342489
quidu "49257357038A"
client @93
supplier @36
vertices (list Points
(2385, 1941)
(2385, 1850))
line_style 3
origin_attachment (2385, 1941)
terminal_attachment (2385, 1850))
(object InheritView "" @98
stereotype TRUE
line_color 3342489
quidu "492560F10242"
client @68
supplier @91
vertices (list Points
(84, 2206)
(84, 1515))
line_style 3
origin_attachment (84, 2206)
terminal_attachment (84, 1515))
(object InheritView "" @99
stereotype TRUE
line_color 3342489
quidu "47BC30F40203"
client @70
supplier @34
vertices (list Points
(1825, 2128)
(1825, 1933))
line_style 3
origin_attachment (1825, 2128)
terminal_attachment (1825, 1933))
(object InheritTreeView "" @100
location (418, 1350)
line_color 3342489
fill_color 13434879
supplier @73
vertices (list Points
(418, 1350)
(418, 1166)))
(object InheritView "" @101
stereotype TRUE
line_color 3342489
quidu "4925608200BB"
client @91
supplier @73
vertices (list Points
(181, 1388)
(181, 1350))
line_style 3
origin_attachment (181, 1388)
terminal_attachment (181, 1350)
drawSupplier @100)
(object InheritView "" @102
stereotype TRUE
line_color 3342489
quidu "45471B4C0127"
client @67
supplier @73
vertices (list Points
(591, 2157)
(591, 1350))
line_style 3
origin_attachment (591, 2157)
terminal_attachment (591, 1350)
drawSupplier @100)
(object ClassView "Class" "Logical View::behavioral::actions::ConditionalStatement" @103
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (933, 1821)
font (object Font
size 10
face "Arial"
bold FALSE
italics TRUE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @103
location (722, 1770)
fill_color 13434879
nlines 1
max_width 422
justify 0
label "ConditionalStatement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "4B8518F803B9"
width 440
height 126
annotation 8
autoResize TRUE)
(object InheritTreeView "" @104
location (933, 2072)
line_color 3342489
fill_color 13434879
supplier @103
vertices (list Points
(933, 2072)
(933, 1884)))
(object InheritView "" @105
stereotype TRUE
line_color 3342489
quidu "45471B7E0219"
client @68
supplier @103
vertices (list Points
(256, 2206)
(256, 2072))
line_style 3
origin_attachment (256, 2206)
terminal_attachment (256, 2072)
drawSupplier @104)
(object InheritView "" @106
stereotype TRUE
line_color 3342489
quidu "45471B7D0181"
client @67
supplier @103
vertices (list Points
(722, 2158)
(722, 2072))
line_style 3
origin_attachment (722, 2158)
terminal_attachment (722, 2072)
drawSupplier @104)
(object InheritView "" @107
stereotype TRUE
line_color 3342489
quidu "4B85190101D4"
client @103
supplier @35
vertices (list Points
(969, 1758)
(969, 1628))
line_style 3
origin_attachment (969, 1758)
terminal_attachment (969, 1628))
(object InheritTreeView "" @108
location (1726, 999)
line_color 3342489
fill_color 13434879
supplier @72
vertices (list Points
(1726, 999)
(1726, 884)))
(object AttachView "" @109
stereotype TRUE
line_color 3342489
client @30
supplier @108
vertices (list Points
(2360, 693)
(2263, 853)
(1726, 931))
line_style 0)
(object InheritView "" @110
stereotype TRUE
line_color 3342489
quidu "45AA9A530242"
client @59
supplier @72
vertices (list Points
(934, 1187)
(934, 999))
line_style 3
origin_attachment (934, 1187)
terminal_attachment (934, 999)
drawSupplier @108)
(object InheritView "" @111
stereotype TRUE
line_color 3342489
quidu "49255ECF007D"
client @73
supplier @72
vertices (list Points
(688, 1040)
(688, 999))
line_style 3
origin_attachment (688, 1040)
terminal_attachment (688, 999)
drawSupplier @108)
(object InheritView "" @112
stereotype TRUE
line_color 3342489
quidu "49256DF60271"
client @93
supplier @72
vertices (list Points
(2628, 1941)
(2628, 999))
line_style 3
origin_attachment (2628, 1941)
terminal_attachment (2628, 999)
drawSupplier @108)
(object InheritView "" @113
stereotype TRUE
line_color 3342489
quidu "4B851CA901D4"
client @103
supplier @72
vertices (list Points
(759, 1758)
(759, 999))
line_style 3
origin_attachment (759, 1758)
terminal_attachment (759, 999)
drawSupplier @108)
(object InheritView "" @114
stereotype TRUE
line_color 3342489
quidu "453E0FF30001"
client @34
supplier @37
vertices (list Points
(1813, 1753)
(1813, 1538))
line_style 3
origin_attachment (1813, 1753)
terminal_attachment (1813, 1538))))
(object ClassDiagram "Blocks and Variables"
quid "45472E140198"
title "Blocks and Variables"
zoom 100
max_height 28350
max_width 21600
origin_x 0
origin_y 0
items (list diagram_item_list
(object NoteView @115
location (562, 1768)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @115
location (155, 1662)
fill_color 13434879
nlines 4
max_width 778
label
|TODO: Identify the argument variables.
|Model argument passing to blocks.
|Describe/specify context forwarding between blocks.
)
line_color 3342489
fill_color 13434879
width 838
height 225)
(object ClassView "Class" "Logical View::modelmanagement::NamedElement" @116
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1764, 725)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @116
location (1472, 596)
fill_color 13434879
nlines 1
max_width 584
justify 0
label "NamedElement")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "45013C240030"
compartment (object Compartment
Parent_View @116
location (1472, 701)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
icon_style "Icon"
fill_color 16777215
anchor 2
nlines 3
max_width 581)
width 602
height 282
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::dataaccess::expressions::Expression" @117
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (647, 1330)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @117
location (380, 1101)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "Expression")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "450E63AB03A2"
compartment (object Compartment
Parent_View @117
location (380, 1206)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
icon_style "Icon"
fill_color 16777215
anchor 2
nlines 7
max_width 531)
width 552
height 482
annotation 8
autoResize TRUE)
(object ClassView "Class" "Logical View::behavioral::actions::Block" @118
ShowCompartmentStereotypes TRUE
IncludeAttribute TRUE
IncludeOperation TRUE
location (1587, 1690)
font (object Font
size 10
face "Arial"
bold FALSE
italics FALSE
underline FALSE
strike FALSE
color 0
default_color TRUE)
label (object ItemLabel
Parent_View @118
location (1320, 1534)
fill_color 13434879
nlines 1
max_width 534
justify 0
label "Block")
icon_style "Icon"
line_color 3342489
fill_color 13434879
quidu "454606CB020A"
compartment (object Compartment