| 
| OCL in Profile [message #68719] | Thu, 12 March 2009 16:29  |  | 
| Eclipse User  |  |  |  |  | Originally posted by: user.domain.invalid 
 This is a multi-part message in MIME format.
 --------------070508060209090007030607
 Content-Type: text/plain; charset=ISO-8859-1; format=flowed
 Content-Transfer-Encoding: 7bit
 
 Hi,
 
 I'm new to OCL and would like to use it to check the validity of my UML
 models an profiles. What I did was add a constraint to a component and
 add an opaque expression to this constraint. I put 'OCL' for language
 and an OCL expression in the body field (c.q. self.name = 'test'). When
 I click validate in the context menu of the component, I get a
 'Validation completed successfully' message, while the OCL statement is
 clearly incorrect. Can anyone give me a clue as to what I did wrong?
 I enclosed the model and the applied profile.
 
 Thanks!
 
 Samuel
 
 --------------070508060209090007030607
 Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
 name="MVC.uml"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: inline;
 filename="MVC.uml"
 
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:MVC="http:///schemas/MVC/_RcrBMAj8Ed6Up9Iq_uAkVA/0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xsi:schemaLocation="http:///schemas/MVC/_RcrBMAj8Ed6Up9Iq_uAkVA/0 MVCProfile.uml#_Rcs2YQj8Ed6Up9Iq_uAkVA">
 <uml:Package xmi:id="_8a6pMAj8Ed6Up9Iq_uAkVA" name="">
 <elementImport xmi:id="_8bfQ8Aj8Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:PrimitiveType" href=" pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolea n"/>
 </elementImport>
 <elementImport xmi:id="_8bfQ8Qj8Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:PrimitiveType" href=" pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
 </elementImport>
 <elementImport xmi:id="_8bfQ8gj8Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:PrimitiveType" href=" pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Unlimi tedNatural"/>
 </elementImport>
 <elementImport xmi:id="_8bfQ8wj8Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:PrimitiveType" href=" pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Intege r"/>
 </elementImport>
 <packagedElement xmi:type="uml:Component" xmi:id="_Tf5nwAj9Ed6Up9Iq_uAkVA" name="Model">
 <ownedRule xmi:id="_22trMAo4Ed6D36YlVx1yWQ" name="checkName" constrainedElement="_Tf5nwAj9Ed6Up9Iq_uAkVA">
 <specification xmi:type="uml:OpaqueExpression" xmi:id="_5UpGMAo4Ed6D36YlVx1yWQ" name="checkName">
 <language>OCL</language>
 <body>self.name = 'test'</body>
 </specification>
 </ownedRule>
 <ownedAttribute xmi:type="uml:Port" xmi:id="_lY5-wAj_Ed6Up9Iq_uAkVA" type="_As_F4Aj-Ed6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedAttribute xmi:id="_Q8a3AAkAEd6Up9Iq_uAkVA" type="_Tf5nwAj9Ed6Up9Iq_uAkVA"/>
 <ownedAttribute xmi:id="_dt_sEAkAEd6Up9Iq_uAkVA" type="_Ug-qQAj9Ed6Up9Iq_uAkVA"/>
 <ownedAttribute xmi:type="uml:Port" xmi:id="_ZzJN0AkFEd6Up9Iq_uAkVA" type="_1hk5MAkEEd6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedConnector xmi:id="_geJfgAkAEd6Up9Iq_uAkVA">
 <end xmi:id="_k1t8sAkAEd6Up9Iq_uAkVA" partWithPort="_lY5-wAj_Ed6Up9Iq_uAkVA" role="_Q8a3AAkAEd6Up9Iq_uAkVA"/>
 <end xmi:id="_vyPUoAkAEd6Up9Iq_uAkVA" partWithPort="_bLJKQAj_Ed6Up9Iq_uAkVA" role="_dt_sEAkAEd6Up9Iq_uAkVA"/>
 </ownedConnector>
 </packagedElement>
 <packagedElement xmi:type="uml:Component" xmi:id="_Ug-qQAj9Ed6Up9Iq_uAkVA" name="View">
 <ownedAttribute xmi:type="uml:Port" xmi:id="_bLJKQAj_Ed6Up9Iq_uAkVA" type="_nvB-EAj-Ed6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedAttribute xmi:type="uml:Port" xmi:id="_CMW0oAkDEd6Up9Iq_uAkVA" type="_9FWUAAkBEd6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedAttribute xmi:id="_KUjDwAkDEd6Up9Iq_uAkVA" type="_Ug-qQAj9Ed6Up9Iq_uAkVA"/>
 <ownedAttribute xmi:id="_NjsgUAkDEd6Up9Iq_uAkVA" type="_UxEUsAj9Ed6Up9Iq_uAkVA"/>
 <ownedConnector xmi:id="_TllxUAkDEd6Up9Iq_uAkVA">
 <end xmi:id="_W9uKwAkDEd6Up9Iq_uAkVA" partWithPort="_CMW0oAkDEd6Up9Iq_uAkVA" role="_KUjDwAkDEd6Up9Iq_uAkVA"/>
 <end xmi:id="_kNND0AkDEd6Up9Iq_uAkVA" partWithPort="_n5Qe0AkDEd6Up9Iq_uAkVA" role="_NjsgUAkDEd6Up9Iq_uAkVA"/>
 </ownedConnector>
 </packagedElement>
 <packagedElement xmi:type="uml:Component" xmi:id="_UxEUsAj9Ed6Up9Iq_uAkVA" name="Controller">
 <ownedAttribute xmi:type="uml:Port" xmi:id="_n5Qe0AkDEd6Up9Iq_uAkVA" type="_9Zoh8AkBEd6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedAttribute xmi:type="uml:Port" xmi:id="_TKe3wAkFEd6Up9Iq_uAkVA" type="_0_KvsAkEEd6Up9Iq_uAkVA" aggregation="composite"/>
 <ownedAttribute xmi:id="_c_UO4AkFEd6Up9Iq_uAkVA" type="_UxEUsAj9Ed6Up9Iq_uAkVA"/>
 <ownedAttribute xmi:id="_hihUUAkFEd6Up9Iq_uAkVA" type="_Tf5nwAj9Ed6Up9Iq_uAkVA"/>
 <ownedConnector xmi:id="_klhyUAkFEd6Up9Iq_uAkVA">
 <end xmi:id="_n_0H4AkFEd6Up9Iq_uAkVA" partWithPort="_TKe3wAkFEd6Up9Iq_uAkVA" role="_c_UO4AkFEd6Up9Iq_uAkVA"/>
 <end xmi:id="_uLow8AkFEd6Up9Iq_uAkVA" partWithPort="_ZzJN0AkFEd6Up9Iq_uAkVA" role="_hihUUAkFEd6Up9Iq_uAkVA"/>
 </ownedConnector>
 </packagedElement>
 <packagedElement xmi:type="uml:Interface" xmi:id="_lM3YwAj9Ed6Up9Iq_uAkVA" name="Data"/>
 <packagedElement xmi:type="uml:Interface" xmi:id="_ldWr0Aj9Ed6Up9Iq_uAkVA" name="Update"/>
 <packagedElement xmi:type="uml:Interface" xmi:id="_ltTMUAj9Ed6Up9Iq_uAkVA" name="Command"/>
 <packagedElement xmi:type="uml:Class" xmi:id="_As_F4Aj-Ed6Up9Iq_uAkVA" name="ModelDataPort" clientDependency="_HyqIEAj-Ed6Up9Iq_uAkVA">
 <interfaceRealization xmi:id="_HyqIEAj-Ed6Up9Iq_uAkVA" supplier="_lM3YwAj9Ed6Up9Iq_uAkVA" client="_As_F4Aj-Ed6Up9Iq_uAkVA" contract="_lM3YwAj9Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Class" xmi:id="_nvB-EAj-Ed6Up9Iq_uAkVA" name="ViewDataPort" clientDependency="_1V3nMAj-Ed6Up9Iq_uAkVA"/>
 <packagedElement xmi:type="uml:Usage" xmi:id="_1V3nMAj-Ed6Up9Iq_uAkVA" supplier="_lM3YwAj9Ed6Up9Iq_uAkVA" client="_nvB-EAj-Ed6Up9Iq_uAkVA"/>
 <packagedElement xmi:type="uml:Class" xmi:id="_9FWUAAkBEd6Up9Iq_uAkVA" name="ViewUpdatePort" clientDependency="_QkragAkCEd6Up9Iq_uAkVA">
 <interfaceRealization xmi:id="_QkragAkCEd6Up9Iq_uAkVA" supplier="_ldWr0Aj9Ed6Up9Iq_uAkVA" client="_9FWUAAkBEd6Up9Iq_uAkVA" contract="_ldWr0Aj9Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Class" xmi:id="_9Zoh8AkBEd6Up9Iq_uAkVA" name="ControlUpdatePort" clientDependency="_WtrZEAkCEd6Up9Iq_uAkVA"/>
 <packagedElement xmi:type="uml:Usage" xmi:id="_WtrZEAkCEd6Up9Iq_uAkVA" supplier="_ldWr0Aj9Ed6Up9Iq_uAkVA" client="_9Zoh8AkBEd6Up9Iq_uAkVA"/>
 <packagedElement xmi:type="uml:Class" xmi:id="_0_KvsAkEEd6Up9Iq_uAkVA" name="ControlCommandPort" clientDependency="_BjJ0sAkFEd6Up9Iq_uAkVA">
 <interfaceRealization xmi:id="_BjJ0sAkFEd6Up9Iq_uAkVA" supplier="_ltTMUAj9Ed6Up9Iq_uAkVA" client="_0_KvsAkEEd6Up9Iq_uAkVA" contract="_ltTMUAj9Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Class" xmi:id="_1hk5MAkEEd6Up9Iq_uAkVA" name="ModelCommandPort" clientDependency="_GxQ4UAkFEd6Up9Iq_uAkVA"/>
 <packagedElement xmi:type="uml:Usage" xmi:id="_GxQ4UAkFEd6Up9Iq_uAkVA" supplier="_ltTMUAj9Ed6Up9Iq_uAkVA" client="_1hk5MAkEEd6Up9Iq_uAkVA"/>
 <profileApplication xmi:id="_HqijUAj9Ed6Up9Iq_uAkVA">
 <eAnnotations xmi:id="_HqkYgAj9Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML">
 <references xmi:type="ecore:EPackage" href="MVCProfile.uml#_Rcs2YQj8Ed6Up9Iq_uAkVA"/>
 </eAnnotations>
 <appliedProfile href="MVCProfile.uml#_fcEmMAj6Ed6Up9Iq_uAkVA"/>
 </profileApplication>
 </uml:Package>
 <MVC:Model xmi:id="_d4X3cAj9Ed6Up9Iq_uAkVA" base_Component="_Tf5nwAj9Ed6Up9Iq_uAkVA"/>
 <MVC:View xmi:id="_g-kzYAj9Ed6Up9Iq_uAkVA" base_Component="_Ug-qQAj9Ed6Up9Iq_uAkVA"/>
 <MVC:Controller xmi:id="_iQqtYAj9Ed6Up9Iq_uAkVA" base_Component="_UxEUsAj9Ed6Up9Iq_uAkVA"/>
 <MVC:DataInterface xmi:id="_sc_XcAj9Ed6Up9Iq_uAkVA" base_Interface="_lM3YwAj9Ed6Up9Iq_uAkVA"/>
 <MVC:UpdateInterface xmi:id="_t61OcAj9Ed6Up9Iq_uAkVA" base_Interface="_ldWr0Aj9Ed6Up9Iq_uAkVA"/>
 <MVC:CommandInterface xmi:id="_vUoS8Aj9Ed6Up9Iq_uAkVA" base_Interface="_ltTMUAj9Ed6Up9Iq_uAkVA"/>
 <MVC:ViewDataPort xmi:id="_djndgAj_Ed6Up9Iq_uAkVA" base_Port="_bLJKQAj_Ed6Up9Iq_uAkVA"/>
 <MVC:ModelDataPort xmi:id="_ozKfIAj_Ed6Up9Iq_uAkVA" base_Port="_lY5-wAj_Ed6Up9Iq_uAkVA"/>
 <MVC:DataConnector xmi:id="_h54dsAkAEd6Up9Iq_uAkVA" base_Connector="_geJfgAkAEd6Up9Iq_uAkVA"/>
 <MVC:ViewUpdatePort xmi:id="_GyvJ4AkDEd6Up9Iq_uAkVA" base_Port="_CMW0oAkDEd6Up9Iq_uAkVA"/>
 <MVC:UpdateConnector xmi:id="_WFxPEAkDEd6Up9Iq_uAkVA" base_Connector="_TllxUAkDEd6Up9Iq_uAkVA"/>
 <MVC:ControlUpdatePort xmi:id="_rzUgoAkDEd6Up9Iq_uAkVA" base_Port="_n5Qe0AkDEd6Up9Iq_uAkVA"/>
 <MVC:ControlCommandPort xmi:id="_VjuAAAkFEd6Up9Iq_uAkVA" base_Port="_TKe3wAkFEd6Up9Iq_uAkVA"/>
 <MVC:ModelCommandPort xmi:id="_bERegAkFEd6Up9Iq_uAkVA" base_Port="_ZzJN0AkFEd6Up9Iq_uAkVA"/>
 <MVC:CommandConnector xmi:id="_nCye8AkFEd6Up9Iq_uAkVA" base_Connector="_klhyUAkFEd6Up9Iq_uAkVA"/>
 </xmi:XMI>
 
 --------------070508060209090007030607
 Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
 name="MVC.umlcomp"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: inline;
 filename="MVC.umlcomp"
 
 <?xml version="1.0" encoding="UTF-8"?>
 <notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xmi:id="_8bf4AAj8Ed6Up9Iq_uAkVA" type="UMLComponent" name="MVC.umlcomp" measurementUnit="Pixel">
 <children xmi:type="notation:Node" xmi:id="_0ztDYAkAEd6Up9Iq_uAkVA" type="2005">
 <children xmi:type="notation:Node" xmi:id="_0ztDYwkAEd6Up9Iq_uAkVA" type="5011"/>
 <children xmi:type="notation:Node" xmi:id="_0ztDZAkAEd6Up9Iq_uAkVA" type="7003">
 <styles xmi:type="notation:DrawerStyle" xmi:id="_0ztDZQkAEd6Up9Iq_uAkVA" collapsed="true"/>
 <styles xmi:type="notation:SortingStyle" xmi:id="_0ztDZgkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FilteringStyle" xmi:id="_0ztDZwkAEd6Up9Iq_uAkVA"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0ztDYQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Package" href="MVC.uml#_8a6pMAj8Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ztDYgkAEd6Up9Iq_uAkVA"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0ztqcAkAEd6Up9Iq_uAkVA" type="2001">
 <children xmi:type="notation:Node" xmi:id="_0zuRgAkAEd6Up9Iq_uAkVA" type="5001"/>
 <children xmi:type="notation:Node" xmi:id="_0zu4kAkAEd6Up9Iq_uAkVA" type="7001">
 <children xmi:type="notation:Node" xmi:id="_00Zm8AkAEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_00aOAAkAEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_00Zm8QkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_Q8a3AAkAEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_00Zm8gkAEd6Up9Iq_uAkVA" x="31" y="39"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_00aOAQkAEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_00aOBAkAEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_00aOAgkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_dt_sEAkAEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_00aOAwkAEd6Up9Iq_uAkVA" x="31" y="120"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_00a1EAkAEd6Up9Iq_uAkVA" type="3015">
 <styles xmi:type="notation:ShapeStyle" xmi:id="_00a1EQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Connector" href="MVC.uml#_geJfgAkAEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_00a1EgkAEd6Up9Iq_uAkVA" x="40" y="93"/>
 </children>
 <styles xmi:type="notation:DrawerStyle" xmi:id="_0zu4kQkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:SortingStyle" xmi:id="_0zu4kgkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FilteringStyle" xmi:id="_0zu4kwkAEd6Up9Iq_uAkVA"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0z_-UAkAEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_00AlYAkAEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_00AlYQkAEd6Up9Iq_uAkVA" x="-95" y="-20"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0z_-UQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_lY5-wAj_Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0z_-UgkAEd6Up9Iq_uAkVA" x="126" y="63"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEX9EAkFEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_yEX9EwkFEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_yEX9FAkFEd6Up9Iq_uAkVA" x="-120" y="24"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEX9EQkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_ZzJN0AkFEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEX9EgkFEd6Up9Iq_uAkVA" x="117" y="198"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0ztqcQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Component" href="MVC.uml#_Tf5nwAj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ztqcgkAEd6Up9Iq_uAkVA" x="153" y="18" width="127" height="244"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zu4lAkAEd6Up9Iq_uAkVA" type="2001">
 <children xmi:type="notation:Node" xmi:id="_0zvfoAkAEd6Up9Iq_uAkVA" type="5001"/>
 <children xmi:type="notation:Node" xmi:id="_0zvfoQkAEd6Up9Iq_uAkVA" type="7001">
 <children xmi:type="notation:Node" xmi:id="_zzRZwAkDEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_zzRZwwkDEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_zzRZwQkDEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_KUjDwAkDEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zzRZwgkDEd6Up9Iq_uAkVA" x="31" y="30"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_zzSA0AkDEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_zzSA0wkDEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_zzSA0QkDEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_NjsgUAkDEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zzSA0gkDEd6Up9Iq_uAkVA" x="31" y="111"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_zzSA1AkDEd6Up9Iq_uAkVA" type="3015">
 <styles xmi:type="notation:ShapeStyle" xmi:id="_zzSA1QkDEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Connector" href="MVC.uml#_TllxUAkDEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zzSA1gkDEd6Up9Iq_uAkVA" x="40" y="84"/>
 </children>
 <styles xmi:type="notation:DrawerStyle" xmi:id="_0zvfogkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:SortingStyle" xmi:id="_0zvfowkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FilteringStyle" xmi:id="_0zvfpAkAEd6Up9Iq_uAkVA"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_00qFoAkAEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_00qssAkAEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_00qssQkAEd6Up9Iq_uAkVA" x="35" y="-20"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_00qFoQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_bLJKQAj_Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_00qFogkAEd6Up9Iq_uAkVA" x="-14" y="54"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_zzPkkAkDEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_zzPkkwkDEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_zzPklAkDEd6Up9Iq_uAkVA" y="5"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_zzPkkQkDEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_CMW0oAkDEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zzPkkgkDEd6Up9Iq_uAkVA" x="-14" y="189"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zu4lQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Component" href="MVC.uml#_Ug-qQAj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zu4lgkAEd6Up9Iq_uAkVA" x="540" y="27" width="109" height="235"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zvfpQkAEd6Up9Iq_uAkVA" type="2001">
 <children xmi:type="notation:Node" xmi:id="_0zvfqAkAEd6Up9Iq_uAkVA" type="5001"/>
 <children xmi:type="notation:Node" xmi:id="_0zwGsAkAEd6Up9Iq_uAkVA" type="7001">
 <children xmi:type="notation:Node" xmi:id="_yEdcoAkFEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_yEdcowkFEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEdcoQkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_c_UO4AkFEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEdcogkFEd6Up9Iq_uAkVA" x="31" y="3"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEdcpAkFEd6Up9Iq_uAkVA" type="3006">
 <children xmi:type="notation:Node" xmi:id="_yEeDsAkFEd6Up9Iq_uAkVA" type="5010"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEdcpQkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Property" href="MVC.uml#_hihUUAkFEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEdcpgkFEd6Up9Iq_uAkVA" x="31" y="93"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEeDsQkFEd6Up9Iq_uAkVA" type="3015">
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEeDsgkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Connector" href="MVC.uml#_klhyUAkFEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEeDswkFEd6Up9Iq_uAkVA" x="40" y="66"/>
 </children>
 <styles xmi:type="notation:DrawerStyle" xmi:id="_0zwGsQkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:SortingStyle" xmi:id="_0zwGsgkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FilteringStyle" xmi:id="_0zwGswkAEd6Up9Iq_uAkVA"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_zzUdEAkDEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_zzUdEwkDEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_zzUdFAkDEd6Up9Iq_uAkVA" x="-112"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_zzUdEQkDEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_n5Qe0AkDEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zzUdEgkDEd6Up9Iq_uAkVA" x="117" y="36"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEbncAkFEd6Up9Iq_uAkVA" type="3002">
 <children xmi:type="notation:Node" xmi:id="_yEcOgAkFEd6Up9Iq_uAkVA" type="5003">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_yEcOgQkFEd6Up9Iq_uAkVA" x="-126" y="24"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEbncQkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Port" href="MVC.uml#_TKe3wAkFEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEbncgkFEd6Up9Iq_uAkVA" x="-14" y="36"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zvfpgkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Component" href="MVC.uml#_UxEUsAj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zvfpwkAEd6Up9Iq_uAkVA" x="351" y="315" width="118" height="172"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zwGtAkAEd6Up9Iq_uAkVA" type="2003">
 <children xmi:type="notation:Node" xmi:id="_0zwtwAkAEd6Up9Iq_uAkVA" type="5005">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_0zwtwQkAEd6Up9Iq_uAkVA" x="-20" y="-31"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zwGtQkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Interface" href="MVC.uml#_lM3YwAj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zwGtgkAEd6Up9Iq_uAkVA" x="396" y="81"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zwtwgkAEd6Up9Iq_uAkVA" type="2003">
 <children xmi:type="notation:Node" xmi:id="_0zxU0AkAEd6Up9Iq_uAkVA" type="5005">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_0zxU0QkAEd6Up9Iq_uAkVA" y="5"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zwtwwkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Interface" href="MVC.uml#_ldWr0Aj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zwtxAkAEd6Up9Iq_uAkVA" x="495" y="279"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zxU0gkAEd6Up9Iq_uAkVA" type="2003">
 <children xmi:type="notation:Node" xmi:id="_0zxU1QkAEd6Up9Iq_uAkVA" type="5005">
 <layoutConstraint xmi:type="notation:Location" xmi:id="_0zx74AkAEd6Up9Iq_uAkVA" x="-65" y="24"/>
 </children>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zxU0wkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Interface" href="MVC.uml#_ltTMUAj9Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zxU1AkAEd6Up9Iq_uAkVA" x="306" y="279"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zx74QkAEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_0zyi8AkAEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zx74gkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_As_F4Aj-Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zx74wkAEd6Up9Iq_uAkVA" x="288" y="27" height="46"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_0zyi8QkAEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_0zzKAAkAEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_0zyi8gkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_nvB-EAj-Ed6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0zyi8wkAEd6Up9Iq_uAkVA" x="450" y="27" height="46"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_6k0bgAkCEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_6k0bgwkCEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_6k0bgQkCEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_9FWUAAkBEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6k0bggkCEd6Up9Iq_uAkVA" x="450" y="162" height="46"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_6k1CkAkCEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_6k1CkwkCEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_6k1CkQkCEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_9Zoh8AkBEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6k1CkgkCEd6Up9Iq_uAkVA" x="477" y="396" width="92" height="46"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEjjQAkFEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_yEkKUAkFEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEjjQQkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_0_KvsAkEEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEjjQgkFEd6Up9Iq_uAkVA" x="234" y="396" width="106" height="46"/>
 </children>
 <children xmi:type="notation:Node" xmi:id="_yEkKUQkFEd6Up9Iq_uAkVA" type="2004">
 <children xmi:type="notation:Node" xmi:id="_yEkKVAkFEd6Up9Iq_uAkVA" type="5008"/>
 <styles xmi:type="notation:ShapeStyle" xmi:id="_yEkKUgkFEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xmi:type="uml:Class" href="MVC.uml#_1hk5MAkEEd6Up9Iq_uAkVA"/>
 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yEkKUwkFEd6Up9Iq_uAkVA" x="288" y="162" width="100" height="46"/>
 </children>
 <styles xmi:type="notation:DiagramStyle" xmi:id="_8bf4AQj8Ed6Up9Iq_uAkVA"/>
 <element xmi:type="uml:Package" href="MVC.uml#_8a6pMAj8Ed6Up9Iq_uAkVA"/>
 <edges xmi:type="notation:Edge" xmi:id="_01OtYAkAEd6Up9Iq_uAkVA" type="4004" source="_00qFoAkAEd6Up9Iq_uAkVA" target="_0zwGtAkAEd6Up9Iq_uAkVA">
 <styles xmi:type="notation:ConnectorStyle" xmi:id="_01OtYQkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FontStyle" xmi:id="_01OtYgkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xsi:nil="true"/>
 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_01OtYwkAEd6Up9Iq_uAkVA" points="[61, 119, 86, -79]$[-25, 198, 0, 0]"/>
 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_02Nk0AkAEd6Up9Iq_uAkVA" id="(0.8666667,0.53333336)"/>
 </edges>
 <edges xmi:type="notation:Edge" xmi:id="_01kroAkAEd6Up9Iq_uAkVA" type="4006" source="_0z_-UAkAEd6Up9Iq_uAkVA" target="_0zwGtAkAEd6Up9Iq_uAkVA">
 <styles xmi:type="notation:ConnectorStyle" xmi:id="_01kroQkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FontStyle" xmi:id="_01krogkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xsi:nil="true"/>
 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_01krowkAEd6Up9Iq_uAkVA" points="[-70, 138, -87, -60]$[17, 198, 0, 0]"/>
 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_02M9wAkAEd6Up9Iq_uAkVA" id="(0.0,0.4)"/>
 </edges>
 <edges xmi:type="notation:Edge" xmi:id="_01nu8AkAEd6Up9Iq_uAkVA" type="4010" source="_00a1EAkAEd6Up9Iq_uAkVA" target="_00Zm8AkAEd6Up9Iq_uAkVA">
 <styles xmi:type="notation:RoutingStyle" xmi:id="_01nu8QkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FontStyle" xmi:id="_01nu8gkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xsi:nil="true"/>
 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_01nu8wkAEd6Up9Iq_uAkVA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
 </edges>
 <edges xmi:type="notation:Edge" xmi:id="_01pkIAkAEd6Up9Iq_uAkVA" type="4010" source="_00a1EAkAEd6Up9Iq_uAkVA" target="_00aOAQkAEd6Up9Iq_uAkVA">
 <styles xmi:type="notation:RoutingStyle" xmi:id="_01pkIQkAEd6Up9Iq_uAkVA"/>
 <styles xmi:type="notation:FontStyle" xmi:id="_01pkIgkAEd6Up9Iq_uAkVA" fontName="Lucida Grande"/>
 <element xsi:nil="true"/>
 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_01pkIwkAEd6Up9Iq_uAkVA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
 </edges>
 </notation:Diagram>
 
 --------------070508060209090007030607
 Content-Type: text/xml; x-mac-type="0"; x-mac-creator="0";
 name="MVCProfile.uml"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: inline;
 filename="MVCProfile.uml"
 
 <?xml version="1.0" encoding="UTF-8"?>
 <uml:Profile xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xmi:id="_fcEmMAj6Ed6Up9Iq_uAkVA" name="MVC" metaclassReference="_qZ17UAj6Ed6Up9Iq_uAkVA _qZ17UQj6Ed6Up9Iq_uAkVA _qZ17Ugj6Ed6Up9Iq_uAkVA _qZ2iYAj6Ed6Up9Iq_uAkVA">
 <eAnnotations xmi:id="_Rcs2YAj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML">
 <contents xmi:type="ecore:EPackage" xmi:id="_Rcs2YQj8Ed6Up9Iq_uAkVA" name="MVC" nsURI="http:///schemas/MVC/_RcrBMAj8Ed6Up9Iq_uAkVA/0" nsPrefix="MVC">
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2Ygj8Ed6Up9Iq_uAkVA" name="View">
 <eAnnotations xmi:id="_Rcs2Ywj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tIIGgAj6Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2ZAj8Ed6Up9Iq_uAkVA" name="base_Component" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Component"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2Zgj8Ed6Up9Iq_uAkVA" name="Model">
 <eAnnotations xmi:id="_Rcs2Zwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_1RCHUAj6Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2aAj8Ed6Up9Iq_uAkVA" name="base_Component" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Component"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2agj8Ed6Up9Iq_uAkVA" name="Controller">
 <eAnnotations xmi:id="_Rcs2awj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3dh0EAj6Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2bAj8Ed6Up9Iq_uAkVA" name="base_Component" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Component"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2bgj8Ed6Up9Iq_uAkVA" name="ViewDataPort">
 <eAnnotations xmi:id="_Rcs2bwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_LbEgkAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2cAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2cgj8Ed6Up9Iq_uAkVA" name="ModelDataPort">
 <eAnnotations xmi:id="_Rcs2cwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MGQyoAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2dAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2dgj8Ed6Up9Iq_uAkVA" name="ViewUpdatePort">
 <eAnnotations xmi:id="_Rcs2dwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MgDLoAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2eAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2egj8Ed6Up9Iq_uAkVA" name="ControlUpdatePort">
 <eAnnotations xmi:id="_Rcs2ewj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_M28BoAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2fAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2fgj8Ed6Up9Iq_uAkVA" name="ControlCommandPort">
 <eAnnotations xmi:id="_Rcs2fwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_NKAuoAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2gAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2ggj8Ed6Up9Iq_uAkVA" name="ModelCommandPort">
 <eAnnotations xmi:id="_Rcs2gwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_NdKUIAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2hAj8Ed6Up9Iq_uAkVA" name="base_Port" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Port"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2hgj8Ed6Up9Iq_uAkVA" name="DataInterface">
 <eAnnotations xmi:id="_Rcs2hwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wM_wQAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2iAj8Ed6Up9Iq_uAkVA" name="base_Interface" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Interface"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2igj8Ed6Up9Iq_uAkVA" name="UpdateInterface">
 <eAnnotations xmi:id="_Rcs2iwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wsSUUAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2jAj8Ed6Up9Iq_uAkVA" name="base_Interface" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Interface"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2jgj8Ed6Up9Iq_uAkVA" name="CommandInterface">
 <eAnnotations xmi:id="_Rcs2jwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_xB9CUAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2kAj8Ed6Up9Iq_uAkVA" name="base_Interface" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Interface"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2kgj8Ed6Up9Iq_uAkVA" name="DataConnector">
 <eAnnotations xmi:id="_Rcs2kwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_6e-9cAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2lAj8Ed6Up9Iq_uAkVA" name="base_Connector" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Connector"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2lgj8Ed6Up9Iq_uAkVA" name="UpdateConnector">
 <eAnnotations xmi:id="_Rcs2lwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_8D1bYAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2mAj8Ed6Up9Iq_uAkVA" name="base_Connector" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Connector"/>
 </eStructuralFeatures>
 </eClassifiers>
 <eClassifiers xmi:type="ecore:EClass" xmi:id="_Rcs2mgj8Ed6Up9Iq_uAkVA" name="CommandConnector">
 <eAnnotations xmi:id="_Rcs2mwj8Ed6Up9Iq_uAkVA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_9DKKYAj7Ed6Up9Iq_uAkVA"/>
 <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Rcs2nAj8Ed6Up9Iq_uAkVA" name="base_Connector" ordered="false" lowerBound="1">
 <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/2.1.0/UML#//Connector"/>
 </eStructuralFeatures>
 </eClassifiers>
 </contents>
 </eAnnotations>
 <elementImport xmi:id="_qZ17UAj6Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Component"/>
 </elementImport>
 <elementImport xmi:id="_qZ17UQj6Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </elementImport>
 <elementImport xmi:id="_qZ17Ugj6Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Connector"/>
 </elementImport>
 <elementImport xmi:id="_qZ2iYAj6Ed6Up9Iq_uAkVA">
 <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
 </elementImport>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_tIIGgAj6Ed6Up9Iq_uAkVA" name="View">
 <ownedAttribute xmi:id="_8bimMAj6Ed6Up9Iq_uAkVA" name="base_Component" association="_8bh_IAj6Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Component"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_1RCHUAj6Ed6Up9Iq_uAkVA" name="Model">
 <ownedAttribute xmi:id="_Aiso0Aj7Ed6Up9Iq_uAkVA" name="base_Component" association="_AisBwAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Component"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_3dh0EAj6Ed6Up9Iq_uAkVA" name="Controller">
 <ownedAttribute xmi:id="_C8kqQgj7Ed6Up9Iq_uAkVA" name="base_Component" association="_C8kqQAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Component"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_8bh_IAj6Ed6Up9Iq_uAkVA" name="Component_View" memberEnd="_8bh_IQj6Ed6Up9Iq_uAkVA _8bimMAj6Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_8bh_IQj6Ed6Up9Iq_uAkVA" name="extension_View" type="_tIIGgAj6Ed6Up9Iq_uAkVA" aggregation="composite" association="_8bh_IAj6Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_AisBwAj7Ed6Up9Iq_uAkVA" name="Component_Model" memberEnd="_AisBwQj7Ed6Up9Iq_uAkVA _Aiso0Aj7Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AisBwQj7Ed6Up9Iq_uAkVA" name="extension_Model" type="_1RCHUAj6Ed6Up9Iq_uAkVA" aggregation="composite" association="_AisBwAj7Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_C8kqQAj7Ed6Up9Iq_uAkVA" name="Component_Controller" memberEnd="_C8kqQQj7Ed6Up9Iq_uAkVA _C8kqQgj7Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_C8kqQQj7Ed6Up9Iq_uAkVA" name="extension_Controller" type="_3dh0EAj6Ed6Up9Iq_uAkVA" aggregation="composite" association="_C8kqQAj7Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_LbEgkAj7Ed6Up9Iq_uAkVA" name="ViewDataPort">
 <ownedAttribute xmi:id="_fZSigQj7Ed6Up9Iq_uAkVA" name="base_Port" association="_fZR7cAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_MGQyoAj7Ed6Up9Iq_uAkVA" name="ModelDataPort">
 <ownedAttribute xmi:id="_i0xx8Aj7Ed6Up9Iq_uAkVA" name="base_Port" association="_i0xK4Aj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_MgDLoAj7Ed6Up9Iq_uAkVA" name="ViewUpdatePort">
 <ownedAttribute xmi:id="_o1YCcAj7Ed6Up9Iq_uAkVA" name="base_Port" association="_o1XbYAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_M28BoAj7Ed6Up9Iq_uAkVA" name="ControlUpdatePort">
 <ownedAttribute xmi:id="_pyB38gj7Ed6Up9Iq_uAkVA" name="base_Port" association="_pyB38Aj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_NKAuoAj7Ed6Up9Iq_uAkVA" name="ControlCommandPort">
 <ownedAttribute xmi:id="_qq-SIgj7Ed6Up9Iq_uAkVA" name="base_Port" association="_qq-SIAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Stereotype" xmi:id="_NdKUIAj7Ed6Up9Iq_uAkVA" name="ModelCommandPort">
 <ownedAttribute xmi:id="_r8SwEgj7Ed6Up9Iq_uAkVA" name="base_Port" association="_r8SwEAj7Ed6Up9Iq_uAkVA">
 <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
 </ownedAttribute>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_fZR7cAj7Ed6Up9Iq_uAkVA" name="Port_ViewDataPort" memberEnd="_fZSigAj7Ed6Up9Iq_uAkVA _fZSigQj7Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_fZSigAj7Ed6Up9Iq_uAkVA" name="extension_ViewDataPort" type="_LbEgkAj7Ed6Up9Iq_uAkVA" aggregation="composite" association="_fZR7cAj7Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_i0xK4Aj7Ed6Up9Iq_uAkVA" name="Port_ModelDataPort" memberEnd="_i0xK4Qj7Ed6Up9Iq_uAkVA _i0xx8Aj7Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_i0xK4Qj7Ed6Up9Iq_uAkVA" name="extension_ModelDataPort" type="_MGQyoAj7Ed6Up9Iq_uAkVA" aggregation="composite" association="_i0xK4Aj7Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="uml:Extension" xmi:id="_o1XbYAj7Ed6Up9Iq_uAkVA" name="Port_ViewUpdatePort" memberEnd="_o1XbYQj7Ed6Up9Iq_uAkVA _o1YCcAj7Ed6Up9Iq_uAkVA">
 <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_o1XbYQj7Ed6Up9Iq_uAkVA" name="extension_ViewUpdatePort" type="_MgDLoAj7Ed6Up9Iq_uAkVA" aggregation="composite" association="_o1XbYAj7Ed6Up9Iq_uAkVA"/>
 </packagedElement>
 <packagedElement xmi:type="
 |  |  |  | 
|  | 
| 
| Re: OCL in Profile [message #68839 is a reply to message #68719] | Sat, 14 March 2009 14:33  |  | 
| Eclipse User  |  |  |  |  | Originally posted by: give.a.damus.gmail.com 
 Hi, Samuel,
 
 The UML2 API does not have a validation rule that checks well-formedness
 of OCL constraints.  In fact, UML2 has no dependencies on OCL; the
 dependency is the reverse, from OCL to UML.
 
 You could use the EMF Validation Framework to define a constraint,
 external to the UML metamodel, that attempts to parse any OCL constraint
 that it finds and reports problems as validation failures.  This would
 be a useful contribution to the Recipes on the OCL Wiki page  :-D
 
 HTH,
 
 Christian
 
 
 user@domain.invalid wrote:
 > Hi,
 >
 > I'm new to OCL and would like to use it to check the validity of my UML
 > models an profiles. What I did was add a constraint to a component and
 > add an opaque expression to this constraint. I put 'OCL' for language
 > and an OCL expression in the body field (c.q. self.name = 'test'). When
 > I click validate in the context menu of the component, I get a
 > 'Validation completed successfully' message, while the OCL statement is
 > clearly incorrect. Can anyone give me a clue as to what I did wrong?
 > I enclosed the model and the applied profile.
 >
 > Thanks!
 >
 > Samuel
 >
 |  |  |  | 
Powered by 
FUDForum. Page generated in 0.55775 seconds